多态和虚函数的使用
来源:互联网 发布:安卓软件搜索 编辑:程序博客网 时间:2024/06/18 12:26
一、虚函数:
在某基类中声明为 virtual 并在一个或多个派生类中被重新定义的成员函数,用法格式为:virtual 函数返回类型 函数名(参数表) {函数体};实现多态性,通过指向派生类的基类指针或引用,访问派生类中同名覆盖成员函数
虚函数只能是一个类的成员函数,虚函数在类中实现必须加上关键字vritual,在类外实现不可加上virtual
virtual 返回类型 函数名(参数表);
在派生类中重新定义虚函数,可以不写virtual, 但是要达到三同函数名 、返回值、参数列表
二、多态
一个函数有多种形态,同一事物有多种形态,即子类继承了父类,不同的子类应该有不同的方法。(有两个必要条件:1.子类继承父类2.父类的方法必须是虚函数3.通过父类的指针或者父类的引用)
三、在子类中对父类的虚函数进行重写
四、虚函数的定义
1.基类和派生类的虚函数应该保持三同,例外父类返回父类指针,子类返回子类的指针,这个也是允许的,他是一个例外
2.只有类的成员才能设置为虚函数,并且是继承关系
3.静态成员函数不能作为虚函数,全局的,为同一类共有,内联函数,无映射关系,不能多为虚函数
4.实现多态,必须指向父类的指针或者引用(父类为虚函数),通过赋值兼容规则。
5.基类或者派生类中动态分配空间时,必须把基类的析勾函数定义为虚函数,实现撤销对象时候的多态性,构造函数不能为虚函数
阅读全文
0 0
- 多态和虚函数的使用
- 多态和虚函数的使用
- C++基础:多态和虚函数的使用
- C++多态及虚函数的理解和使用
- c++中类的多态和虚函数的使用
- C++中类的多态和虚函数的使用
- 多态与虚函数的使用
- PostMessage函数和SendMessage函数的使用
- qsort函数和bsearch函数的使用
- BitBlt函数和StretchBlt函数的使用
- qsort函数和bsearch函数的使用
- qsort函数和bsearch函数的使用
- 函数指针和函数引用的使用
- nvl函数和decode函数的使用
- 函数和标签的使用
- lua函数.和:的使用
- C++的虚函数和多态
- 函数重载和虚函数在概念和使用方式方面的区别
- Python根据关键字百度搜索下载图片
- 傅里叶变换在图像处理中的应用
- git插件安装到myclipse错误解决
- funny
- 明明白白c++之类的基本操作(c++ primer 的读书笔记 ,类对象, 类用户, 类成员的含义)
- 多态和虚函数的使用
- 编程实现计算字符串的长度
- Visual Studio 2012打开项目 提示ASP.NET 4.0未在web服务器上注册
- CSS3-新增背景系列background相关属性
- ArrayList与LinkedList的区别
- CodeForces
- mybatis 写sql语句 rownuma条件
- libevent的疑难杂症
- php的websocket