Как установить параметр по умолчанию для вектора <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={});
Ответ 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={});