大家好,我是翼同学!
今天笔记的内容是:
之前我们讲过虚函数,即在基类中被声明为virtual
,且在派生类中重新定义的成员函数,其可实现成员函数的动态重载。但需要注意,虚函数里是可以有实现语句的。而什么是纯虚函数?
纯虚函数就是一种特殊的虚函数,也叫抽象函数。在基类中,没有对虚函数给出有意义的实现语句,而是将其定义为纯虚函数,即纯虚函数并没有函数体。而纯虚函数的实现工作就交给派生类去做。这就是纯虚函数的作用。就类似在JAVA
中,用关键字abstract
去修饰函数。表示其为抽象函数。
有了纯虚函数的类就属于抽象类。
注意:抽象类无法实例化对象。
即声明了纯虚函数的类是一个抽象类。并且无法创建抽象类的实例。如类myClass
是抽象类,那么语句:myClass a;
是无法实现的。所以我们只能创建它的派生类的实例。但是派生类必须重写基类的纯虚函数,否则子类也是抽象类。
virtual 返回值类型 函数名(形参列表) = 0;
本章内容参考书:
《C++程序设计教程》---- 钱能 著
好了,本篇笔记就到写这,欢迎大家到评论区一起讨论!