C++:继承的一点注意事项

  当一个子类要定义自己的拷贝构造函数时,要记得调用基类的拷贝构造函数,不然的话,当调用子类的拷贝构造函数时,需要调用基类的构造函数,此时调用的是基类的默认构造函数,这样会产生不期望的后果。如:

 

Class Base

{

int i;

Public:

Base(int ii) :i(ii){};

Base(const &Base b):i(b.i){};

Base():i(0){};

}

 

Claee Child :public Base

{

Int i;

Public:

Child(int ii) :Base(ii),i(ii){};

 

Child(const & c):Base(c),i(c.i){}; //调用基类的拷贝构造函数

 

}

posted on 2011-05-24 21:10    阅读(245)  评论(0编辑  收藏  举报

导航