Нашли или выдавили из себя код, который нельзя назвать нормальным,
на который без улыбки не взглянешь?
Не торопитесь его удалять или рефакторить, — запостите его на
говнокод.ру, посмеёмся вместе!
итолианский с++ панимаш, рагацци.
что они хотели в строках 6-8 сказать кануло в лету.
и вместо 4 человеческих геттеров один бесполезный заху*чили. (бесполезный тем что четыре переменные всегда надо под рукой иметь.)
там в двух разных краях проекта две несовместимые крайности: (выше) один эксепшн на все случаи жизни и по эксепшену на каждый уникальный случай. в добавок, в паре мест, в новом коде на это дело народ забил и пользуется третьей более осмысленой иерархией эксепшенов наследованой от std::exception. вообщем, разброд и шатание традиционные коммерческому софту который уже раз пять руки менял.
Метод `c_str()` класса `std::string` никогда не возвращает null pointer. Для пустой строки, например, возвращается указатель на строку "", но не null pointer. Что имел в виду аффтар - не ясно.
там в двух разных краях проекта две несовместимые крайности: (выше) один эксепшн на все случаи жизни и по эксепшену на каждый уникальный случай. в добавок, в паре мест, в новом коде на это дело народ забил и пользуется третьей более осмысленой иерархией эксепшенов наследованой от std::exception. вообщем, разброд и шатание традиционные коммерческому софту который уже раз пять руки менял.