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