Как установить параметр по умолчанию для вектора <string> для использования в конструкторе по умолчанию в классе?
Например, класс с именем Table, с его конструктором:
Table(string name="", vector <string> mods);
Как инициализировать вектор пустой?
Изменить:
Забыл упомянуть, что это был С++.
Ответы
Ответ 1
Table(string name="", vector <string> mods);
если вы хотите, чтобы вектор был пуст внутри конструктора, тогда
mods.clear();
или
mods.swap(vector<string>());
Если вы хотите как параметр по умолчанию:
Table(string name="", vector<string> mods = vector<string>());
Как и любой другой параметр по умолчанию.
Ответ 2
Чтобы добавить к другому ответу: если вы используете С++ 11, вы можете использовать синтаксис универсальной инициализации, чтобы сократить объявление параметра по умолчанию для вектора к следующему:
Table(string name="", vector<string> mods={});