首页后端开发ASP.NET什么是虚函数

什么是虚函数

时间2024-01-31 05:48:03发布访客分类ASP.NET浏览343
导读:收集整理的这篇文章主要介绍了什么是虚函数,觉得挺不错的,现在分享给大家,也给大家做个参考。虚函数是指:在某基类中声明为virtual并在一个或多个派生类中被重新定义的成员函数,即被virtual关键字修饰的成员函数;格式为“virtual...
收集整理的这篇文章主要介绍了什么是虚函数,觉得挺不错的,现在分享给大家,也给大家做个参考。

虚函数是指:在某基类中声明为virtual并在一个或多个派生类中被重新定义的成员函数,即被virtual关键字修饰的成员函数;格式为“virtual 函数返回类型 函数名(参数表) { 函数体} ”。

在某基类中声明为 virtual 并在一个或多个派生类中被重新定义的成员函数,用法格式为:virtual 函数返回类型 函数名(参数表) { 函数体} ;实现多态性,通过指向派生类的基类指针或引用,访问派生类中同名覆盖成员函数。

简单地说,那些被virtual关键字修饰的成员函数,就是虚函数。

首先:强调一个概念定义一个函数为虚函数,不代表函数为不被实现的函数。定义它为虚函数是为了允许用基类的指针来调用子类的这个函数。定义一个函数为纯虚函数,才代表函数没有被实现。定义纯虚函数是为了实现一个接口,起到一个规范的作用,规范继承这个类的程序员必须实现这个函数。

例:

class A{
public:virtual void foo(){
    cout"A::foo() is called"endl;
}
}
    ;
class B:public A{
public:void foo(){
    cout"B::foo() is called"endl;
}
}
    ;
int main(void){
    A *a = new B();
    a->
    foo();
     // 在这里,a虽然是指向A的指针,但是被调用的函数(foo)却是B的!return 0;
}
    

这个例子是虚函数的一个典型应用,通过这个例子,也许你就对虚函数有了一些概念。它虚就虚在所谓“推迟联编”或者“动态联编”上,一个类函数的调用并不是在编译时刻被确定的,而是在运行时刻被确定的。由于编写代码的时候并不能确定被调用的是基类的函数还是哪个派生类的函数,所以被成为“虚”函数。 虚函数只能借助于指针或者引用来达到多态的效果。

以上就是什么是虚函数的详细内容,更多请关注其它相关文章!

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!

上一篇: C#中的console是什么意思下一篇:c语言需要什么基础猜你在找的ASP.NET相关文章 C# 一些面试试题的实例教程2022-05-16.NET 6开发TodoList应用之请求日志组件HttpLogging介绍2022-04-16.NET 6中间件Http Logging使用介绍2022-04-16gojs一些实用的高级用法2022-04-16.NET6开发TodoList应用之实现查询排序2022-04-16.NET6开发TodoList应用之实现数据塑形2022-04-16.NET微服务架构CI/CD自动打包镜像2022-04-16Asp.Net Core 使用Monaco Editor 实现代码编辑器功能2022-04-16.NET微服务架构CI/CD自动构建Jenkins+Gitee2022-04-16.Net Core微服务网关Ocelot集成Consul2022-04-16 其他相关热搜词更多phpjavapython程序员loadpost-format-gallery

若转载请注明出处: 什么是虚函数
本文地址: https://pptw.com/jishu/593560.html
c语言怎么编译(详细示例) c语言怎么定义宏定义

游客 回复需填写必要信息