jlz

  C++博客 :: 首页 :: 联系 :: 聚合  :: 管理
  0 Posts :: 13 Stories :: 0 Comments :: 0 Trackbacks

常用链接

留言簿

我参与的团队

搜索

  •  

最新评论

     创建派生类对象时,程序首先创建基类对象。
  RatedPlayer::RatedPlayer(unsigned int r, const char* fn, const char* ln, bool ht) :  TableTennisPlayer(fn,ln,ht)
{
rating  = r;
}

TableTennisPlayer(fn,ln,ht)  调用基类构造函数. 实参传递给TableTennisPlayer.

 如果没有成员初始化列表。 则程序将使用默认的基类构造函数。 
  RatedPlayer::RatedPlayer(unsigned int r,const char * fn, const char * ln,bool ht)  //  TableTennisPlayer() 将调用
{
rating = r;
}

    第二种构造函数
  RatedPlayer::RatedPalyer(unsigned int r, const TableTennisPlayer &tp): TableTennisPalyer(tp)
{
rating = r;
}

const TableTennisPlayer &tp  调用基类的复制构造函数。如果基类没有定义,则自动生成一个。因为这个类没有动态内存分配。
 以上写法还可以写成
  RatedPlayer::RatedPalyer(unsigned int r, const TableTennisPlayer &tp): TableTennisPalyer(tp),rating(r)
{
}

posted on 2008-09-21 15:39 jz 阅读(155) 评论(0)  编辑 收藏 引用 所属分类: c++ primer plus 读书笔记