回 帖 发 新 帖 刷新版面

主题:求助纯虚函数

[b]class cx
{
virtual void cxhs()const=0;
};[/b]

纯虚函数为什么要初始化,不加不是照样运行吗?它属不属于虚函数呢。
[i][b]virtual void cxhs();[/b][/i][em3]

回复列表 (共3个回复)

沙发

virtual void cxhs();是一般虚函数,而virtual void cxhs()const=0;是纯虚,纯虚就是函数体为空的一般虚函数,表示其在定义的类中(基类)无须要实现。而一般虚函数是函数体不为空有实现的函数,用于体现成员的多态性。

板凳

有三个类,每个类都有thank方法。这是虚函数的多态性吗?

class dod
{
public:
  void ok()
  {cout<<"say goodbye."<<endl;}
};

class A:public dod
{
public:
   virtual void thank()
   {cout<<"AAA"<<'\n';}
};

class B
{
public:
   virtual void thank()
   {cout<<"BBB"<<'\n';}
};

class C
{
public:
   virtual void thank()
   {cout<<"CCC"<<'\n';}
};

3 楼

是啊

我来回复

您尚未登录,请登录后再回复。点此登录或注册