纯虚函数后=0为什么,为什么要有纯虚函数

今天我开始学习C中的多态,这是一个很有趣的概念。多态是指同一个函数名字可以被多个类使用,但是它们的行为却不同,这种特性可以让程序更加灵活,而且代码也更加简洁,首先,我学习了如何使用虚函数来实现多态,虚函数是一个在基类中声明的函数,但是它可以被派生类重载。当我们调用一个虚函数时,程序会根据实际的对象类型来确定该调用哪个函数。

接着,我学习了如何使用纯虚函数来实现抽象类和接口。纯虚函数是一个在基类中声明但没有具体实现的函数。派生类必须实现这些纯虚函数,否则它们也会变成抽象类。这种方式可以让我们定义一组规范,确保派生类都具备相同的行为和属性。最后,我还学习了如何使用虚析构函数来处理多态。虚析构函数可以让我们在删除派生类对象时,确保其析构函数被正确调用。

1、C++中 纯虚 函数有什么作用?

四个字:制定标准纯虚 函数就是为你的程序制定一个标准,就是只要你继承了我,你就必须按照我和标准实现我的所有方法,否则你就是虚的,就像JAVA里的接口一样,你会制定标准让程序更通用。如果所有的父类都是纯虚 函数,那么这个父类可以作为一个接口。

可以说明一个虚函数只提供了一个可以被子类型重写的接口。纯虚 函数是在基类中声明的虚函数基类不能生成对象,可以使用指针或引用派生类对象。基类没有通过在原型/纯虚-0中添加“0”virtualvoidfunction 1()0来实现基类中的纯虚-0。

2、 纯虚 函数的定义

纯虚函数是一个特殊的虚拟函数,其一般格式如下:class { virtual <函数name >()0;…};在很多情况下,virtual 函数不能在基类中被赋予有意义的实现,而是声明为纯虚 函数,其实现留给基类的派生类。这是纯虚 函数的功能。纯虚 函数可以让一个类先有一个操作名,但是没有操作内容,这样派生类在继承的时候就可以给出一个具体的定义。

3、关于 纯虚 函数

实现多态性。其实从底层来说,编译器只为纯虚 函数预留了一个入口地址空间,其他什么都没做,从派生的子类负责将此地址空间作为自己的成员函数 address进行覆盖。这样做的目的是为了实现多态性,因为对不同派生类函数的成员的访问将被映射到不同的代码,所以基类的指针可以访问派生类的成员函数。

未经允许不得转载:获嘉县恩宇网络有限公司 » 纯虚函数后=0为什么,为什么要有纯虚函数

相关文章