• 继承、虚函数注意点


    • 哪些函数不能被继承:

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

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

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

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

    构造函数:

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

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

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

  • 相关阅读:
    如何保证service不被系统杀死
    查找算法
    java多线程学习
    设计模式-单例
    Python2.7-内置类型
    Python2.7-内置函数
    准备要学的东西
    Python-2.7 : 编码问题及encode与decode
    【JZOJ4637】大鱼海棠【博弈论】
    【JZOJ4637】大鱼海棠【博弈论】
  • 原文地址:https://www.cnblogs.com/mrlsx/p/5850989.html
Copyright © 2020-2023  润新知