标签:col size 动态 静态 自定义 访问 版本 bsp 决定
一、关键点
虚函数:某些成员函数,基类希望它的派生类各自定义适合自身的版本
任何构造函数之外的非static函数都可以是虚函数
关键字virtual只能出现在类内部的声明语句之前而不能用于类外部的函数定义
二、虚函数与动态绑定的关系
使用基类的引用或指针调用一个虚成员函数时会执行动态绑定,而通过其他表达式调用虚函数则在编译时就会将调用的版本确定
动态绑定只有当我们通过指针或引用调用虚函数时才会发生
如果虚函数使用了默认实参,那么动态绑定会失效,实参值由调用的静态类型决定
超链接:
例外:当类的虚函数返回类型是类本身的指针或引用时,派生类的返回类型可与基类不同,前提是从派生类到基类的类型转换时可访问的
这个函数:我会深究如果只定义了它但没有重新定义虚函数会发生啥?只要它不用override声明就不会报错,该类中的此虚函数版本同基类版本。实际上,我们自己操作不会定义这么一个傻缺函数。
标签:col size 动态 静态 自定义 访问 版本 bsp 决定
原文地址:http://www.cnblogs.com/xzxl/p/7821560.html