关于纯虚函数

定义

纯虚函数(Pure Virtual Function)是面向对象编程中的一个概念,它是一个在基类(抽象类)中声明但没有提供实际实现的虚函数。纯虚函数用于定义一个接口,要求派生类必须实现这个函数,以确保派生类具备某些特定的行为或能力。在C++中,通过在函数声明后面添加 "= 0" 来将函数声明为纯虚函数。

在这里还要明确一个概念叫做抽象类,包含至少一个纯虚函数的类被称为抽象类。抽象类不能被实例化,只能被用作基类。如果一个类包含了一个或多个纯虚函数,它就不能被实例化,只有派生类提供了纯虚函数的实现后,才能创建派生类的对象。

作用

纯虚函数用于定义基类的接口,强制派生类提供相应的实现。这有助于实现多态性和抽象类的概念,允许不同的派生类按照自己的方式实现基类的接口。

使用示例:

class A {
public:
    virtual void draw() = 0; // 纯虚函数
};

然后派生类必须提供纯虚函数的实际实现,否则它们也会被认为是抽象类,无法被实例化。示例如下 :

class B : public A {
public:
    void draw() override {
        // 提供了draw的实现
    }
};

这里需要注意,纯虚函数是可以有参数和返回值的,他只是在类中作声明而无定义即没有函数体,但是其参数和返回值都可以存在添加。

然后关于抽象类,首先抽象类是一个Class类,他只是至少包含一个纯虚函数,所以它也是可以有自己的成员变量和普通函数成员的,但是由于一个类只要含有纯虚函数,就不能进行实例化,所以抽象类的概念就此诞生。

最后,写文不易,不收藏也请给个赞,谢谢亲~! 

(本文仅供学习时参考,如有错误,纯属作者技术不到位,不足之处请多指教,谢谢)

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值