在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時,可以看到基類和派生類的成員變量都被成功初始化。