温馨提示×

C++ Struct继承时如何初始化

c++
小樊
89
2024-07-21 09:20:03
栏目: 编程语言

在C++中,结构体(Struct)不能继承其他结构体。但是可以使用类(Class)来实现结构体的继承。在类的继承中,可以通过构造函数来初始化基类和派生类的成员变量。

以下是一个简单的示例代码,演示如何在C++中初始化基类和派生类的成员变量:

#include <iostream>
using namespace std;

// 基类
class Base {
public:
    int baseVar;
    Base(int var) : baseVar(var) {
        cout << "Base class constructor" << endl;
    }
};

// 派生类
class Derived : public Base {
public:
    int derivedVar;
    Derived(int baseVar, int derivedVar) : Base(baseVar), derivedVar(derivedVar) {
        cout << "Derived class constructor" << endl;
    }
};

int main() {
    Derived d(1, 2);
    cout << "Base class variable: " << d.baseVar << endl;
    cout << "Derived class variable: " << d.derivedVar << endl;

    return 0;
}

在上面的示例代码中,Base类有一个成员变量baseVar,并且有一个参数化的构造函数来初始化该成员变量。Derived类继承自Base类,有一个成员变量derivedVar,并且在构造函数中显式调用了Base类的构造函数来初始化baseVar。在main函数中创建Derived类的对象d时,可以看到基类和派生类的成员变量都被成功初始化。

0