码迷,mamicode.com
首页 > 其他好文 > 详细

继承、虚函数注意点

时间:2016-09-07 22:36:38      阅读:193      评论:0      收藏:0      [点我收藏+]

标签:

  • 哪些函数不能被继承:

构造函数、析构函数、拷贝构造函数、赋值操作符重载函数(赋值构造函数)

  • 哪些函数不能为虚函数:(定义虚函数一般是为了使用多态性质)

普通函数(非成员函数):不属于类的成员,不能用于多态,只能被重载。

静态成员函数:静态成员函数属于类的信息,被所有对象共享,不归某个对象所有,没有动态绑定的必要性。

构造函数:

友元函数:c++不支持友元函数的继承,因此不能在派生类中被覆盖,没有必要为虚函数

内联成员函数:内联函数在编译阶段内联展开,减少函数调用的代价,而虚函数用于多态,在运行时才能确定具体调用哪个函数,两者不可能统一。

赋值构造函数:虽然基类中可以将成员函数operator=定义为虚函数,但赋值构造函数要求形参类型和该类本身类型相同,因此积累中的赋值构造函数形参类型为基类类型,即使声明为虚函数,也不会执行子类的赋值操作符。

 

继承、虚函数注意点

标签:

原文地址:http://www.cnblogs.com/mrlsx/p/5850989.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!