c++ - 验证 setter 中的值是否不同是否有意义

标签 c++ performance

我记得我在某个地方(可能是在 Github 上)看到了一个 setter 中的这样的例子:

void MyClass::setValue(int newValue)
{
    if (value != newValue) {
        value = newValue;
    }
}

对我来说这没有多大意义,但我想知道它是否会带来任何性能提升。

最佳答案

它对 标量类型 没有意义,但对某些 用户定义 类型可能有意义(因为类型可以非常“大”或者它的赋值运算符可以做一些“艰苦”的工作)。

关于c++ - 验证 setter 中的值是否不同是否有意义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16471441/

相关文章:

c++ - 当它们在父类(super class)中被定义为纯虚拟时,如何从子类中调用所有函数?

python - 在 C++ 中嵌入 Cython

c++ - 定义的 `inline` 找不到用于特化的模板方法

c++ - 运行方法并等待完成所有 for 循环 openmp

mysql - 将数据保存在多个文本行与 blob 上,哪个效果更好?

performance - OpenGL ES 2.0 : The most efficient setup for a VBO with GL_STREAM_DRAW?

c# - 网络性能问题

c++ - C++ 中的返回数组

python - 找到两对总和为相同值的对

python - 选择 NaN 之后出现的 ndarray 中的值