构造函数成员初始化列表是一种在创建对象时给类成员变量赋初值的方式。
该方式可以在构造函数中使用冒号(:)后跟随成员初始化列表的形式来实现。
使用此方法可以提供更高的效率和代码质量,并避免在构造函数体内使用赋值运算符去初始化变量。

在构造函数中使用成员初始化列表给它的成员变量赋初始值:

class Person {
    private:
        std::string name;
        int age;
    public:
        Person(std::string n, int a) : name(n), age(a) {
            // 构造函数代码
        }
};

在这个例子中,我们定义了一个名为Person的类,类中有两个私有成员变量name和age。在Person类的构造函数中我们使用了成员初始化列表的形式对这两个成员变量进行了初始化。然后在构造函数代码块体内就可以直接使用它们了。

另外,成员初始化列表还可以用于对常量成员变量进行初始化,例如:

class Circle {
    private:
        const double PI;
        double radius;
    public:
        Circle(double r) : PI(3.14159265358979323846), radius(r) {
            // 构造函数代码
        }
};

在这个例子中,我们定义了一个名为Circle的类,其中包含了一个半径属性radius,并且也定义了一个常量属性PI。由于PI是一个常量成员,因此不能在构造函数内部进行初始化。这时我们就可以使用成员初始化列表的形式来对常量成员变量进行赋值。


Totn
10 声望5 粉丝

幼稚也没关系,去实践,去经历,去思考!