WEB开发网
开发学院软件开发VC VC++深入详解:纯虚函数 阅读

VC++深入详解:纯虚函数

 2008-11-24 19:37:20 来源:WEB开发网   
核心提示:将breathe()函数申明为纯虚函数,结果如例2-18所示,VC++深入详解:纯虚函数,例2-18class animal{public:void eat(){cout<<"animal eat"<<endl;}void sleep(){cout<<"

将breathe()函数申明为纯虚函数,结果如例2-18所示。

例2-18

  class animal
  {
  public:
    void eat()
    {
      cout<<"animal eat"<<endl;
    }
    void sleep()
    {
      cout<<"animal sleep"<<endl;
    }
    virtual void breathe() = 0;
  };

纯虚函数是指被标明为不具体实现的虚成员函数(注意:纯虚函数也可以有函数体,但这种提供函数体的用法很少见)。纯虚函数可以让类先具有一个操作名称,而没有操作内容,让派生类在继承时再去具体地给出定义。凡是含有纯虚函数的类叫做抽象类。这种类不能声明对象,只是作为基类为派生类服务。在派生类中必须完全实现基类的纯虚函数,否则,派生类也变成了抽象类,不能实例化对象。

纯虚函数多用在一些方法行为的设计上。在设计基类时,不太好确定或将来的行为多种多样,而此行为又是必需的,我们就可以在基类的设计中,以纯虚函数来声明此种行为,而不具体实现它。

注意:C++的多态性是由虚函数来实现的,而不是纯虚函数。在子类中如果有对基类虚函数的覆盖定义,无论该覆盖定义是否有virtual关键字,都是虚函数。

Tags:VC 深入 详解

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接