как пропустить Default Arguments C++?

Мне нужно написать конструктор с двумя параметрами по умолчанию.

func(int arg1 , char* arg2 = "arg2", int arg3 = 1) //example

Мне предоставлен сценарий, в котором вызывается конструктор и дается значение arg1 и arg2 и arg3 ожидается, что будет использоваться значение по умолчанию. Затем инстанцируется другой объект и задается значение для arg1 и arg3, а для arg2 ожидается использование значения по умолчанию. Теперь проблема в том, что вы "не можете пропустить" параметры по умолчанию - это то, что я читаю из текста и в Интернете. Там говорится, что нужно упорядочить параметры по умолчанию по вероятности их перегрузки, но в сценарии один параметр по умолчанию используется, а другой нет. В подсказках к этому вопросу говорится, что нужно изменить порядок параметров/аргументов. Однако никакое количество перестановок, которые я сделал, не помогло решить эту проблему.

Также нельзя использовать перегруженные конструкторы. Это должно быть сделано одним конструктором.

Так как же это сделать? Я в тупике и схожу с ума от этого :(

12
задан Mysticial 24 November 2011 в 22:05
поделиться