C++ 成员初始化列表(Member Initializer List)在 C++ 中具有广泛的应用场景,主要用于初始化类的成员变量。以下是一些主要的应用场景:
class MyClass {
public:
const int &ref_member;
int const_member;
MyClass(int value) : ref_member(value), const_member(value) {}
};
class MyClass {
public:
std::vector<int> vec;
MyClass(std::initializer_list<int> init_list) : vec(init_list) {}
};
class MyClass {
public:
int x;
MyClass(int init_value) : x(init_value) {}
};
class Base {
public:
int base_member;
Base(int value) : base_member(value) {}
};
class Derived : public Base {
public:
int derived_member;
Derived(int base_value, int derived_value) : Base(base_value), derived_member(derived_value) {}
};
总之,C++ 成员初始化列表在初始化类的成员变量时非常有用,它可以确保成员变量在构造函数体执行之前得到正确的初始化,同时还可以提高代码的效率和可读性。