示例:
class A
{
public:
A();
private:
struct {int x, y; } position_;
};
我的问题是:如何在构造函数体之前初始化position_.x
和position_.y
?像:
A::A() //init position_.x and position_.y here
{
}
答案 0 :(得分:2)
只需使用普通的构造函数初始化列表:
A::A()
: position_{0, 0}
{
}
答案 1 :(得分:1)
您可以像构造函数初始化列表中的任何数据成员 1 一样初始化它:
A() : position_{1,2} {}
在声明点:
struct {int x, y;} position_{1, 2};
或两者兼而有之。
1假设你有C ++ 11或更高版本