c++ - 在同一个类中使用访问器

标签 c++ accessor

我听说在 C++ 中,在定义访问器的同一类的成员函数中使用访问器(get...())是一种良好的编程习惯吗?这是真的吗?应该这样做吗?

例如,这是首选吗:

void display() {
    cout << getData();
}

像这样:

void display() {
    cout << data;
}

data 是定义访问器的同一类的数据成员...与 display() 方法相同。

我正在考虑这样做的开销,尤其是当您需要在同一个类中多次调用访问器而不是直接使用数据成员时。

最佳答案

这样做的原因是,如果您更改getData() 的实现,您将不必更改直接访问data 的其余代码。

而且,一个聪明的编译器无论如何都会内联它(它总是知道类内部的实现),所以没有性能损失。

关于c++ - 在同一个类中使用访问器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/895340/

相关文章:

c++ - Qt示例无法在Ubuntu上运行

java - Main 如何访问类?

objective-c - 在 getter 方法中设置属性是不是很糟糕?

Ruby - protected 方法

c++ - 了解 Rcpp 插件

c++ - 无法在初始化中转换类型

当我使用 header 时,C++ 函数会引发错误,但如果我在源代码中定义它,则不会引发错误?

c++ - 与自身双重比较

C# 获取设置访问器

c# - 得到;不能正常工作