Я обновляю класс до С++ 14 и пытаюсь выяснить простейший способ инициализировать все переменные экземпляра до нуля при построении. Вот что я до сих пор:
class MyClass {
public:
int var;
float* ptr;
double array[3];
MyStruct data;
unique_ptr<MyStruct> smart_ptr;
MyClass() = default;
~MyClass() = default;
}
Устанавливает конструктор в default
эквивалент выполнения:
MyClass() : var{}, ptr{}, array{}, data{}, smart_ptr{} {}
... или мне нужно инициализировать каждую переменную? (Я пробовал оба в Visual Studio, и я получаю нули в любом случае, но я не уверен, что это удача или нет.)
Я запускаю класс без скобок: MyClass obj;