C++ 沉思录
编译工具
CMake
CLion
接口设计
用户:“我希望有什么样的操作,如何表达这些操作?”
- #include “Picture.h”
- Picture p(init, 3) ⇒ Picture(const char* const *, int) 字符数组的指针+数组的大小
- 成员形式
p.frame()
or非成员形式 frame(p)
- 成员形式:原图修改,覆盖原图
- 非成员:可以构成复杂的表达式,以产生新图像
- 操作符
operator+
or 函数 heat(p,q)
类的作者:内存管理,对象数组,接口测试
- 指针:复制构造函数(或者引用计数等内存管理手段),析构函数,赋值操作符,零指针
- 对象数组:需要default构造函数。
- 静态成员函数:大逻辑下具体业务函数,如 比大小,计算并分配内存块 etc
- 句柄类:隐藏继承实现细节,省去用户处理内存管理的麻烦(继承总要用到指针)。
测试:编译一下看是否通过(函数未定义故无法连接)
策略