c++ - 为什么C++的复杂类要用getter和setter?

标签 c++ getter-setter

C++复杂类为什么要用函数修饰实部和虚部?如果不必处理 getter 和 setter,公共(public)成员变量是否也能正常工作?所有被隐藏的是实部和虚部的私有(private)名称。

最佳答案

这样做的简单原因是它允许实现随着时间的推移而改变,即使它实际上可能不会经常改变(如果有的话)。如果你有一个类并且你正在修改它的实例变量,你现在依赖于那些现有的实例变量,而不是拥有一个可以保持不变而不改变的公共(public)接口(interface)(尽管实现发生变化,例如与平台相关的代码).

Femaref 的回答也是正确的——这些方法可以允许发生某些可能必要的逻辑。否则,您可能无法从对象中获取正确的数据。

关于c++ - 为什么C++的复杂类要用getter和setter?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5493143/

相关文章:

c++ - 如何理解自定义绘制?我可以使用哪些工具?

c++ - 使用预处理器打印 C++ 类中的默认函数

jquery - jQuery.val 如何绕过 value 属性上的 get/set 函数?

java - getter 和 setter 以及容器对象(ArrayList、HashMap 等)

c++ - copy-and-swap 技术在赋值运算符函数中使用复制构造函数

c# - 将 C# 中的 "from ... in "迭代转换为 C++ (Qt)

c++ - 有什么比使用静态整数更好的存储信息的方法? C++

javascript - 如何在循环中定义 getter 和 setter?

java - 具有 map 的类的获取者/设置者

java - Java 中多个 'proxy' 方法的替代方法