通过ID获取名称

Getting name by ID

本文关键字:获取 ID 通过      更新时间:2023-10-16

我从来没有费心去inline任何功能,我对它是如何工作的相当不熟悉。这个函数会因为inline d而受益吗?

const char* GetNameByID(int ID)
{
  auto itor = std::find(Achievements.begin(),Achievements.end(),ID);
  if(itor != Achievements.end())
  {
      return (*itor).second->Name;
  }
  return "";
}

使函数内联意味着任何调用它的函数实际上都将编译器的代码嵌入到调用函数中。有时,它可以通过消除开销来提高性能。

在旧版本的c++中内联函数更有价值,现在它主要是编译器的推荐。好的优化编译器会为你内联。

这里没有足够的代码来判断将这个函数内联是否会有帮助,因为性能上的帮助是在调用函数中。如果这个函数在一个循环中被调用了1000次,将其内联将会有所帮助。如果不在循环中调用它,它将没有真正的帮助。