经典多态例题(二)

选择题:

1.对于下面的类CA,在32位计算机,四字节对齐的情况下,sizeof(CA)=( )

class CA
{
public:
  CA( );
  virtual ~CA( );
 private:
  int m_itime;
 public:
   virtual gettime( );
  settime(int itime);
};

A.4      B.8     C.12       D.16

 

2.下面这段程序,打印结果是( )

class CParent
{
public:
 CParent(){}
 ~CParent()
 {
  g_iCount += 1;
 }
};
class CSon:public CParent
{
public:
 CSon(){}
 ~CSon()
 {
  g_iCount += 2;
 }
};

 

void main()
{
 CParent *pp = new CSon();
 delete pp;
 cout<<g_iCount<<endl;
 pp=NULL;
}

A.1          B.2             C.3              D.以上都不对

 

3.请问下面这段程序的输出结果

class CParent
{
public:
 CParent(){}
 virtual ~CParent(){ }
 void prt()
 {
  cout<<"parent";
 }
};
class CSon:public CParent
{
public:
 CSon(){}
 ~CSon(){}
 void prt()
 {
  cout<<"son";
 }
};
void Testone(CParent& parent)
{
 parent.prt();
}
void Testtwo(CParent parent)
{
 parent.prt();
}

 

void main()
{
  CSon *ps = new CSon;
 Testone(*ps);
 Testtwo(*ps);
 delete ps;
 ps=NULL;
}

A.son  parent     B.son son    C.parent   son   D.parent   parent

 

答案:

1.B              2.A            3.A

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值