第五章 类和对象 v1.1
第一部分 一个Box
cpp
#include <iostream>
class Box {
public:
Box(int width, int height) : width_(width), height_(height) {}
int area() const {
return width_ * height_;
}
private:
int width_;
int height_;
};
int main() {
Box box(3, 4);
std::cout << box.area() << '\n';
}构造函数负责让对象在创建时处于可用状态;area() 不修改成员,所以标记为 const。
第二部分 资源管理先记住一点
如果类直接持有动态资源,不要只补一个析构函数就结束。还要考虑复制、移动和异常安全;很多时候优先用 std::vector、std::string、智能指针等现成类型,避免手写所有权管理。
继承和虚函数不在这里先套模板,后面有实际需要再用独立例子记录。