0

在返回对要修改的参数的引用的类中创建“getter”函数是一种常见的做法。我的问题是这是否是一种缓存友好的做法,因为我怀疑每次调用“getter”方法时,缓存都会被冲走以跳转到该方法。

谁能告诉我这是否属实或给我一些指示?这是一个例子:

class X
{
  public:
    int& getA() { return a; }
    int& getB() { return b; }
  private:
    int a, b;
};

int main()
{
  X x;           // cache should contain x data
  x.getA() = 0u; // cache destroyed because of calling getA()?
  x.getB() = 1u; // cache destroyed again because of calling getB()?
}
4

0 回答 0