美文网首页
GeekBand.重学C++(4)

GeekBand.重学C++(4)

作者: EthanZhang_ | 来源:发表于2016-03-31 17:35 被阅读0次

    关于 this 指针

    1. 调用父类的成员
    2. 非 const 成员中
    3. const 成员中

    动态绑定与静态绑定

    1. 绑定时期
    2. 动态绑定三条件
    • 父类指针调用
    • 调用虚函数
    • 向上转型,即不能是子类指针指向父类对象

    关于 const

    1. const 数据成员与 const 成员函数
    2. const 对象 与 成员函数
    • const 对象(数据成员不可改变),只能调用 const 成员函数(保证不改变对象的数据成员)
    • 非 const 对象(数据成员可改变), 可以调用 const 成员函数和非 const 成员函数(不保证不改变数据成员)
    • 当 const 和非 const 成员函数同时存在的时候,非 const 对象只会调用非 const 成员函数
    • 非 const 成员函数中可以调用 const 成员函数,反之则不行
      • 第一,传给 const 成员函数的 this 指针是 const 指针,指向的数据成员不可改变,此时调用非 const 成员函数,即:非 const 成员函数中传入的是 const 成员函数,显然不行。
      • 第二,const 成员函数不改变对象数据成员,而其中调用可能改变数据成员的非 const 成员函数,明显不合理。

    重载 operator new, operator delete, operator new[], operator delete[]

    1. operator new 和 operator new[] 的传入参数表示什么?
    2. operator new[] 分配的空间为什么比对象本身的 size 大?

    重载 new 和 delete()

    1. placement delete 的作用?什么时候调用?
    2. 为什么 new delete 的重载成员函数都是 static ?

    相关文章

      网友评论

          本文标题:GeekBand.重学C++(4)

          本文链接:https://www.haomeiwen.com/subject/eckelttx.html