zoukankan      html  css  js  c++  java
  • C++覆盖和隐藏

    C++ 覆盖 与 隐藏

    隐藏

    指的是:子类继承父类属性(函数),并且自身也有与父类同名的属性(函数),这是编译器就会在子类中对父类属性做一个隐藏,我们并不能通过子类对象直接点出父类相关属性或函数,必须要在特定位置上加上父类作用域才可以。

    覆盖

    指的是:子类继承父类虚函数,并且对其重写,这时,我们用一个父类指针来接收子类对象地址。并通过这个父类指针来调用这个函数时,调用的就是子类重写后的函数了。这操作成为覆盖---子类重写后的函数地址将父类虚函数地址进行覆盖。不过这一切的一切都是通过函数指针(虚函数指针vfptr)来完成的。关于多态底层实现细节详细信息请见:

    注意:

    • 隐藏只要求的时父类子类有同名函数,所以也就是说,可以发生重载

    • 覆盖中父类子类都是对同一函数,这个函数时一摸一样的,参数列表,返回值,函数名......

  • 相关阅读:
    Noip2017 提高组初赛 游(baozha)记
    bzoj4557
    MVVM
    当下较热web前端技术汇总
    JQ 常见demo
    各种宽高
    JQuery 总结
    自定义滚动条配合鼠标滚轮demo
    H5 触摸事件
    SQL必备知识点
  • 原文地址:https://www.cnblogs.com/yuanshixiao/p/13986248.html
Copyright © 2011-2022 走看看