我有两个类,“缓存”和“ LRU”:
类缓存看起来像这样:

class cache
{
  private:
    int num_cold;                               //Number of cold misses
    int num_cap;                               //Number of capacity misses
    int num_conf;                               //Number of conflict misses
    int miss;                                   //Number of cache misses
    int hits;                                   //Number of cache hits

  public:
           // methods
}


我也有LRU类的方法

bool LRU::access (Block block)
{
  for (i = lru.begin(); i != lru.end(); i++)               //If
  {
    if (i->get_tag() == block.get_tag() && i->get_index() == block.getIndex())
    {
      lru.push_back(block);
      lru.erase(i);
      return true;
      //Here i want to add 1 to the value of variable "hits" of class "cache"
    }
  }
}


我想在方法“ LRU :: access”中增加“缓存”类中变量的值。
有人可以告诉我我该怎么做。
谢谢。

最佳答案

将此添加到cache

friend class LRU;


这将允许LRU中的任何代码访问cache的所有私有成员。

关于c++ - C++:如何从另一个类的函数访问一个类的私有(private)变量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17367345/

10-09 13:32