這里是一個(gè)需要注意的小常識(shí)
/**
* 在子類對(duì)象構(gòu)造時(shí),需要調(diào)用父類構(gòu)造函數(shù)對(duì)其繼承得來(lái)的成員進(jìn)行初始化
在子類對(duì)象析構(gòu)時(shí)歪沃,需要調(diào)用父類析構(gòu)函數(shù)對(duì)其繼承得來(lái)的成員進(jìn)行清理
*/
class A {
public:
A(int a){
this->a = a;
}
protected:
int a;
};
class B :public A{
public:
/**
* 在子類對(duì)象構(gòu)造時(shí)氓侧,需要調(diào)用父類構(gòu)造函數(shù)對(duì)其繼承得來(lái)的成員進(jìn)行初始化
在子類對(duì)象析構(gòu)時(shí)瓢喉,需要調(diào)用父類析構(gòu)函數(shù)對(duì)其繼承得來(lái)的成員進(jìn)行清理
*/
B(int a,int b):A(a){
this->b = b;
}
void printAB(){
cout<<"a:"<<a<<" b:"<<b<<endl;
}
private:
int b;
};
int main(int argc, const char * argv[]) {
// insert code here...
std::cout << "Hello, World!\n";
B b(10,20);
b.printAB();
return 0;
}