我从未打扰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 "";
}
答案 0 :(得分:2)
使函数内联意味着任何调用它的函数实际上都会由编译器将代码嵌入到调用函数中。有时它会通过消除开销来提高性能。
在旧版本的C ++中,内联函数更有价值,现在主要是对编译器的推荐。优秀的优化编译器将为您提供内容。
这里没有足够的代码来判断使这个函数内联是否有帮助,因为性能上的帮助是在调用函数中。如果在循环中调用此函数1000次,则使其内联将有所帮助。如果没有在循环中调用它将无法提供帮助。