C/C++ 教程
C/C++ 面向对象
面向对象的核心是把数据和操作数据的方法放在一起,对外只暴露必要的入口。
先看一个最小可用的例子:一个只保存名字并提供问候方法的类型。
#include <string>
class Person {
public:
explicit Person(const std::string& name) : name_(name) {}
std::string Greet() const { return "Hello " + name_; }
private:
std::string name_;
};
至于要不要用继承,判断标准很简单:共享的是行为还是仅仅是字段?只是字段的话,组合更省事。