c++ - 为什么不首先将类(class)成员设置为公开?

标签 c++ class

<分区>

我不明白为什么人们一直说当你创建一个类时你应该创建一个get() 方法来获取类中的变量,以及一个set() 在类中设置变量的方法。

如果您有一个 get()/set() 方法...那么为什么不首先将变量公开呢?

这并不是说您无论如何都会不小心更改它,因为您仍然需要键入 myClassName.variable

我错过了什么吗?

最佳答案

使用 get/set 函数可以让您在以后灵活地更改您的类实现,而不必更改访问该类的所有代码。

例如,您可能会更改其中一个内部变量的类型,或者您想对变量可以设置的值添加限制。也许您可能只想按需计算一个值。

此外,您可以使 get/set 函数成为非内联函数,并在其上放置一个断点。

关于c++ - 为什么不首先将类(class)成员设置为公开?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16073704/

相关文章:

c++ - Visual C++ 窗口创建失败

c++ - 多态回调实现

php - 如何从同一类的不同函数访问变量?

Python 类定义语法

C++ :My program won't compile and I am not sure why. 我想我缺少一个库...?简单的回答

c++ - C++读取不同类型的数据

c++ - 在 C 中,我们可以使用诸如::或 -> 之类的运算符来访问头文件中的预定义方法吗?

c++ - Boost 将默认边权重设置为 1

PHP 文件命名约定(.class、.inc)

vb.net - 编写我的第一个 VB.NET 类