virtual关键字可以添加在什么上

只需要记住可以声明成虚函数的就行!(普通的成员函数或析构函数)
虚函数的使用原则:可以把public或protected的部分成员函数声明为虚函数;
                 C++中的析构函数通常是虚析构函数;
                 构造函数不能声明为虚函数;
                 虚函数不能声明为静态的、全局的、友元的。
 解释一:
为什么构造函数不能为虚函数:
没有实例化没有属于的内存Vtpl没有,如何实现virtual
解释二:内联函数----在编译期被直接展开,无法实现在运行时绑定的虚函数;无意义
非成员函数也不可以,没有继承无法实现动态绑定的实现
 
 
 
 
原文地址:https://www.cnblogs.com/fenglongyu/p/7646269.html