c++ 能不能做到先初始化成员变量,执行基类构造函数
时间: 2023-11-22 11:04:12 浏览: 62
初始化基类成员-C++程序设计(谭浩强版)ppt
当一个派生类对象被创建时,其基类的构造函数会首先被调用,然后是派生类的构造函数。在派生类的构造函数中,可以使用成员初始化列表来初始化成员变量,这样就可以先初始化成员变量,再执行基类构造函数。
例如,假设有一个基类`Base`和一个派生类`Derived`,其中`Derived`包含一个成员变量`m_member`和一个构造函数:
```cpp
class Base {
public:
Base() {}
};
class Derived : public Base {
public:
Derived(int member) : m_member(member), Base() {}
private:
int m_member;
};
```
在上面的代码中,派生类`Derived`的构造函数首先使用成员初始化列表初始化`m_member`成员变量,然后调用基类`Base`的构造函数。这样就可以保证成员变量先被初始化,然后再执行基类构造函数。
阅读全文