在构造函数旁边声明的属性

num*_*l25 3 c++ constructor ctor-initializer

我对C/C++非常陌生,不确定调用该方法的方法.但那就是为什么我在这里试图找到答案.让我给你举个例子

MyClass::MyClass() : valueOne(1), valueTwo(2)
{
      //code
}
Run Code Online (Sandbox Code Playgroud)

其中valueOne和valueTwo是在主体外部分配值的类属性,这是什么方法,为什么这样做.为什么不这样做呢

MyClass::MyClass()
{
      valueOne = 1;
      valueTwo = 2
      //code
}
Run Code Online (Sandbox Code Playgroud)

如果有人能帮助我,那将是伟大的.

Bri*_*ndy 7

这是一个初始化列表.您可以在构造函数后使用初始化列表初始化成员变量.

默认情况下,构造函数将通过调用其默认构造函数自动创建作为成员变量的对象.通过使用初始化列表,您可以指定使用其他构造函数.有时,如果您的成员变量没有没有参数的构造函数,则必须使用初始化列表.