class B
{
int b;
public:
B() {
b = 0;
cout<<"B's default constructor called"<<endl;
}
B(int i){
b = i;
cout<<"B's constructor called."<<endl;
}
~B(){
cout<<"B's destructor called"<<endl;
}
void print() const{
cout<< b <<endl;
}
};
class C: public B{
int c;
public:
C(){
c = 0;
cout<<"C's default constructor called"<<endl;
}
C(int i, int j){
B::B(i) = i;
c = j;
cout<<"C's constructor called"<<endl;
}
~C(){
cout<<"C's destructor called"<<endl;
}
void print() const{
B::print();
cout<< c <<endl;
}
};
int _tmain(int argc, _TCHAR* _targc[])
{
C obj(5,6);
obj.print();
return 0;
}
B's default constructor called
B's constructor called.
B's constructor called.
B's destructor called
B's destructor called
C's constructor called
0
6
C's destructor called
B's destructor called
請按任意鍵繼續 . . .