用大括号括起的初始化器列表可以用来初始化一个类的成员变量。在C++中,这种初始化方式被称为成员初始化列表。它的语法形式为在类的构造函数的定义中,在函数体之前使用冒号(:)后跟成员变量名和初始值的列表。
成员初始化列表的优势是可以在对象创建时直接对成员变量进行初始化,而不需要在构造函数的函数体中逐个赋值。这样可以提高代码的效率和可读性。
成员初始化列表的应用场景包括:
以下是一个示例代码,演示了如何使用成员初始化列表来初始化类的成员变量:
class MyClass {
private:
int myInt;
double myDouble;
const int myConst;
AnotherClass& myRef;
public:
MyClass(int i, double d, int c, AnotherClass& ref) : myInt(i), myDouble(d), myConst(c), myRef(ref) {
// 构造函数体
}
};
class AnotherClass {
// 类定义
};
int main() {
AnotherClass obj;
MyClass myObj(10, 3.14, 100, obj);
return 0;
}
在上面的示例中,MyClass类有四个成员变量:myInt、myDouble、myConst和myRef。在构造函数的成员初始化列表中,分别使用传入的参数初始化了这些成员变量。注意,myConst是一个常量成员变量,只能在成员初始化列表中进行初始化。
腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云