Сообщение от HolyDel
void Save2File(const char* const FileName);
если бы мне платили за килобайты кода - защищал бы
а так это адов бред, имхо.
хотя больше бесит когда по константной ссылке передают всякие инты, чары и флоаты.
|
Суть: избежать случайного затирания внутри функции.
Ну из серии: скопипастил кусок кода из старой реализации, который оперирует массивом FileName и заодно изменяет адрес, хранимый в указателе (допустим, для той задачи это было адекватно [например, указатель ссылается на последний слеш в переданном имени], а в теперешней - нет) . И бац - ошибка.
Пример синтетический конечно, но, если всё по уму писать, то многое от чего можно отказаться - некоторый контроль (особенно при коллективном программировании) можно возложить на язык.
Не думаю, что часто в реализации вы используете повторно нессылочные аргументы - так чего же их не "закрыть"?
Я не агитирую, я высказываю контраргумент для полноты картины