Подтвердить что ты не робот

Как установить параметр по умолчанию для вектора <string> для использования в конструкторе по умолчанию в классе?

Например, класс с именем Table, с его конструктором: Table(string name="", vector <string> mods);

Как инициализировать вектор пустой?

Изменить: Забыл упомянуть, что это был С++.

4b9b3361

Ответ 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={});