SU3*_*SU3 0 c++ constructor initialization c++14
我有一个只有双成员变量的结构,例如
struct foo { double a, b, c; };
Run Code Online (Sandbox Code Playgroud)
另一个类有一个std::vector<foo> v
成员,它std::vector<foo>::vector(size_t)
在初始化列表中调用构造函数.
我想做的是编写一个默认构造函数,foo
以便将其中的所有双精度初始化为零,而不必编写
foo(): a(0), b(0), c(0) { }
Run Code Online (Sandbox Code Playgroud)
我一直需要添加更多变量foo
,但将它们作为容器的元素是没有意义的std::array<double>
,因为它们都有不同的用途.
由于您已将其标记为C++ 14,因此您可以初始化此类成员变量,而无需在构造函数中初始化它们:
struct foo {
double a = 0.0;
double b = 0.0;
double c = 0.0;
};
Run Code Online (Sandbox Code Playgroud)