C++虚函数
来源:互联网 发布:seo综合查询5118 编辑:程序博客网 时间:2024/05/15 23:52
通过引用或指针调用虚函数时,编译器将生成代码,在运行时确定调用哪个函数。虚函数需要在函数声明前面加上virtual,在派生类类函数重定义中不需添加virtual关键字。如果一个函数在基类中被声明为virtual,那么在所有的派生类中它都是virtual的。编译器会维护一个虚函数表vftable。有多少个虚函数就会有多少个对应的虚函数项,比如vs中用_vfptr指针表示
#include<iostream>using namespace std;class A{public:A(){}//虚函数也要写函数体//写成virtual void test();通不过编译virtual void test(){cout<<"A"<<endl; }};class B:public A{public:B(){}void test(){cout<<"B"<<endl;}};class C:public A{public:C(){}void test(){cout<<"C"<<endl;}};int main(){//动态绑定A *a=new C();//输出C a->test();//输出BA *b=new B();b->test();//下列代码静态绑定//因此test方法调用的是父类A的方法A m;C n;m=n;m.test();//下列代码动态绑定//输出CA *m1;C n1;m1=&n1;m1->test();cin.get();return 0;}
- C/C++--虚函数
- 【C/C++】纯虚函数
- C/C++, 虚函数表
- C++:虚函数用途
- 虚函数详解(C++)
- 虚函数(C++)
- c++-->虚函数 2
- C++ 虚函数
- C++:虚函数
- C++_虚函数
- 【c++】虚函数
- 【C++】虚函数
- C++ 虚函数
- [C++]虚函数
- 虚函数 假多态 C++
- C/C++ 虚函数
- C++:虚函数理解
- C++---虚函数
- POJ4044 A Score Sequence
- Top 10 Reasons to Use HTML5 Right Now
- 2012.5.11
- mysql socket连接比tcp连接方式更快
- lwxshow.com资源-Mac 上在office OpenOffice download 中文版,高速,迅雷下载
- C++虚函数
- power design 设计oracle数据库使用过程中注意点
- wp_list_categories
- linux设备驱动模型一三基础结构之Kobject
- android 学习之一spinner的学习一
- C or java
- WinCE 5.0常用函数收集整理
- Activity本身作为事件监听器
- 过滤驱动容易让新手纠结的几个函数