Представьте, что у вас есть функция X () по всей вашей кодовой базе. Требуется три аргумента. Прототип выглядит примерно так:
В заголовочном файле:
void X(string a, int b, string c);
В файле .cpp:
void myclass::X(string a, int b, string c) {
...
}
Предположим, вы добавляете в кодовую базу и вам необходимо передать 4-й аргумент.
к Х только в одном месте. Все вызовы с тремя аргументами должны оставаться на месте. Вы хотели бы не нарушать все версии с тремя аргументами вызовов X.
Я попытался использовать совет здесь , но это не работает. Ответ один до сих пор приводит к ошибкам не найдена соответствующая функция Попытка сделать то, что ответит 2 предложения, приводит к ошибкам, которые я не могу перегрузить. В частности, я пытаюсь это, основываясь на ответе 2 в этой ссылке:
В заголовочном файле:
void X(string a, int b, string c, string d);
void X(string a, int b, string c, string d="default_value");
Любые предложения о том, как правильно добавить один вызов с четырьмя аргументами, не прерывая все вызовы с тремя аргументами, приветствуются - спасибо!