这篇是这段时间看的侯捷关于C++基础的课程《C++面向对象高级编程》的笔记, 课程内容大家自己找吧. 这个课程主要是我用来C++回顾和拾遗的,其中很多内容都来自他其它的课程,并且有很多是《EffectiveC++》的内容,在看了在看了。
这里直接就是我当时记录的全部笔记了,有点乱,自己也不太满意。全文4.0k字, 难度不高内容也不长. 本文同步存于我的Github仓库,(https://github.com/ZFhuang/Study-Notes/tree/main/Content/C%2B%2B%E7%9B%B8%E5%85%B3/C%2B%2B%E9%9D%A2%E5%90%91%E5%AF%B9%E8%B1%A1%E9%AB%98%E7%BA%A7%E7%BC%96%E7%A8%8B)
operator TYPE() const {...}.
没有返回类型因为函数名就是返回类型, 而且一般会加const因为一般转型不会改变对象内容.explict
使得这个构造函数只能进行显式构造. 这个关键字比较少见, 几乎只会出现在构造函数的前面call
. 这个过程需要多出好多步的寄存器计算, 因此动态绑定运行起来比静态绑定慢this
指针. this指针本质上是指向当前调用函数的这个对象地址的指针void* operator new(size_t)
, 参数是需要申请的内存的大小, 这个参数的值是由编译器自动填入的. delete的签名是void operator delete(void* ptr)
, 自然就是对应内存的指针sizeof(TYPE)*N+4
, 这里的4是为了标识数组内对象的数量, 否则以后就无法正确析构了. 申请完空间后会自动调用多次构造函数最后返回所需的指针扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有