构造函数中的成员初始化列表
在 C 中,构造函数后面的冒号后跟表达式是成员初始化列表的一部分。它有两个主要目的:
1。调用基类构造函数
在派生类中,成员初始化列表可用于指定调用基类构造函数的参数。例如,在以下代码中:
class demo { public: demo(unsigned char le = 5, unsigned char default) : len(le) { // Body of the constructor } }; class newdemo : public demo { public: newdemo() : demo(0, 0) { // Body of derived class constructor } };
newdemo 构造函数中的 : demo(0, 0) 语法使用参数 0 和 0 调用 demo 基类的构造函数。
2.初始化数据成员
在执行构造函数体之前,可以使用成员初始化列表来初始化类的数据成员。这对于无法在构造函数主体中赋值的 const 成员特别有用。例如:
class Demo { public: Demo(int& val) : m_val(val) { // Body of constructor } private: const int& m_val; };
在此示例中,: m_val(val) 语法使用构造函数参数 val 的值初始化 m_val const 引用数据成员。
以上是成员初始化列表在 C 构造函数中如何工作?的详细内容。更多信息请关注PHP中文网其他相关文章!