正如标题所说:创建函数来访问类变量是一种好的做法吗?
我见过很多代码都执行如下操作:
class MyClass {
public:
void setx(int a);
void sety(int b);
int read_x;
int read_y;
private:
int x;
int y;
};
void MyClass::setx(int a) {
x=a;
}
void MyClass::sety(int b) {
y = b;
}
int MyClass::read_x() {
return x;
{
int MyClass::read_y() {
return y;
}
因此,他们不是直接访问变量 (MyClass.x),而是使用函数来读取和设置变量值等。
这是标准做法还是良好做法?
最佳答案
是的,出于多种原因,访问函数优先于直接成员访问。它们提供了一个独特的访问点,更易于跟踪和调试。
例如,您可以在 MyClass::setX()
中设置一个断点,而不是在更改 MyClass.x
的代码中处处设置断点.
但是,尽管访问器方法比直接成员访问要好,但如果使用不当,访问器方法并非没有缺点。详情可以访问Getters and Setters are bad OO design?
关于c++ - 创建函数来访问类变量是一种好习惯吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9676390/