您好,程序员们。我发现为类的数据成员指定构造函数初始化列表有两种不同的语法。
// Syntax style 1:
class Base {
public:
Base(int x) : a(x) {}
private:
int a;
};
// Syntax style 2:
class Base {
public:
Base(int x) : a{x} {}
private:
int a;
};
a(x)
和a{x}
有什么区别?这是某种语义吗?建议使用哪种语法样式?