sir*_*lot 3 c++ default-constructor in-class-initialization c++11
我试图使用大括号初始化(感谢Visual Studio 2013实际支持),但出于某种原因,当我在类上执行它时,它需要两组大括号.例如:
class NumberGrabber {
int number;
public:
NumberGrabber() : number{ 5 }{}
int getNumber() { return number; }
};
Run Code Online (Sandbox Code Playgroud)
为什么要我说number { 5 }{}?这对我来说并没有真正的视觉感受.
ava*_*kar 14
前一组大括号是初始化器number,后者是定义构造函数体的复合语句.通过适当的格式化,这可能会变得更加清晰.
NumberGrabber()
: number{5}
{
}
Run Code Online (Sandbox Code Playgroud)
那更有意义吗?