条款22:将成员变量声明为 private
Declare data members private.
将成员变量声明为私有,然后定义操作变量的函数接口,这些接口可以对成员变量的处理有更精确的控制,它们可以实现”不准访问“
、”只读访问“以及”读写访问“;并且通过函数访问成员变量,日后可改以某个计算替换这个成员变量,实现封装的特性。
对比 public 成员变量,如果修改了这些成员变量,那么所有访问它的客户代码都将被污染;
同样地,对于 protected 成员变量,所有的 derived classes 都会被破坏;
Last updated
Was this helpful?