美文网首页
纯虚函数和虚函数

纯虚函数和虚函数

作者: Wangcy | 来源:发表于2016-12-06 13:50 被阅读0次

1. 虚函数和纯虚函数可以定义在同一个类(class)中,含有纯虚函数的类被称为抽象类(abstract class),而只含有虚函数的类(class)不能被称 抽象类。

2. 虚函数可以被直接使用,也可以被子类(sub class)重载以后以多态的形式调用,而纯虚函数必须在子类(sub class)中实现该函数才可以使用 ,只有声明而没有定义。

3. 虚函数和纯虚函数都可以在子类(sub class)中被重载,以多态的形式被调用。

4. 纯虚函数通常存在于抽象基类(abstract base class )之中,被继承的子类重载,目的是提供一个统一的接口。

5. 虚函数的定义形式:virtual   {函数声明};纯虚函数的定义形式:virtual    {函数声明 } = 0;

在虚函数和纯虚函数的定义中不能有static标识符,原因很简单,被static修饰的函数在编译时候要求前期绑定,然而虚函数却是动态绑定。

6. 如果一个类中含有纯虚函数,那么任何试图对该类进行实例化的语句都将导致错误的产生,因为抽象基类(ABC)是不能被直接调用的,必须被子类 继承,且在子类对纯虚函数进行定义。

example

相关文章

  • 纯虚函数和抽象类

    纯虚函数和抽象类 概念 纯虚函数:没有函数体的虚函数。 抽象类:包含纯虚函数的类就称为抽象类。 纯虚函数就是在函数...

  • 4.0 C++远征:纯虚函数与抽象类

    3-1纯虚函数抽象类 [TOC] 一、纯虚函数 1.纯虚函数的定义 ​ 纯虚函数,没有函数体,同时定义时在函数...

  • 08. 纯虚函数、抽象类、多继承、菱形继承、虚

    一.虚函数 二.纯虚函数 三,虚析构函数 四.纯虚函数 五,多继承 六.多继承-虚函数 七.菱形继承 八. 虚继承...

  • 虚函数和纯虚函数

    虚函数为了重载和多态的需要,在基类中是有定义的,即便定义是空,所以子类中可以重写也可以不写基类中的此函数! 纯虚函...

  • 纯虚函数和虚函数

    1. 虚函数和纯虚函数可以定义在同一个类(class)中,含有纯虚函数的类被称为抽象类(abstract clas...

  • 2018-01-28 高级多态(一)

    纯虚函数 纯虚函数是必须在派生类中重写的虚函数。通过将虚函数初始化为0来将其声明为纯虚的。派生类重写所有虚函数,否...

  • 虚函数、纯虚函数

    1.虚函数(impure virtual) C++的虚函数主要作用是“运行时多态”,父类中提供虚函数的实现,为子类...

  • 抽象基类与纯虚函数

    因为呢,含有纯虚函数的类才叫做基类。所以我们先看看纯虚函数。 纯虚函数 1.什么是纯虚函数?首先呢,要清楚一点的就...

  • 虚函数 纯虚函数 虚类

    虚函数 类的某些函数,基类希望它的派生类各自定义这些函数各自的版本。除了构造函数,任何函数都可以是虚函数。让派生类...

  • C++语言-多态,纯虚函数,模版函数

    1、虚函数、纯虚函数 需要注意的是,纯虚函数子类是必须继承的,虚函数不是不必须继承的。 2、多态 在C++中默认关...

网友评论

      本文标题:纯虚函数和虚函数

      本文链接:https://www.haomeiwen.com/subject/tlkrmttx.html