c 语言中虚函数与纯虚函数,C ++中的虚函数和纯虚函数之间的区别

下表显示了虚拟和纯虚拟功能之间的区别:虚拟功能纯虚函数虚函数在类中有其定义。纯虚函数没有定义。

声明:虚拟funct_name(parameter_list){。。。。。};声明:虚拟funct_name(parameter_list)= 0;

它没有派生类的概念。如果一个类至少包含一个纯虚函数,则将其声明为抽象。

如果需要,基类可以覆盖虚拟函数。在纯虚函数派生类的情况下,必须明确重写纯虚函数。

虚拟功能

范例程式码#include 

using namespace std;

class B {

public:

virtual void s() //virtual function {

cout<

}

};

class D: public B {

public:

void s() {

cout<

}

};

int main(void) {

D d; // An object of class D

B *b= &d;// A pointer of type B* pointing to d

b->s();// prints"D::s() called"

return 0;

}

输出结果In Derived

纯虚函数

范例程式码#include

using namespace std;

class B {

public:

virtual void s() = 0; // Pure Virtual Function

};

class D:public B {

public:

void s() {

cout <

}

};

int main() {

B *b;

D dobj; // An object of class D

b = &dobj;// A pointer of type B* pointing to dobj

b->s();// prints"D::s() called"

}

输出结果Virtual Function in Derived class

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值