gpt4 book ai didi

C++ _inline 在单例中被忽略并出现在我的探查器中。怎么会?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:08:18 25 4
gpt4 key购买 nike

我的项目中有很多类被单例访问,如下所示:

_inline GUI_BS_Map* GUI_GetBS_Map()
{
static GUI_BS_Map obj;
return &obj;
};

据我了解,这段代码应该是内联的。我将 Visual Studio (2005) 选项设置为内联任何合适的内容,并且我的探查器 (AQTime) 绝对没有设置为覆盖 _inlines。但是,当我分析代码时,它们对我的每个单例函数进行了数千次调用。我可能会错过什么?(我正在分析调试版本(以获取分析器的符号)但所有速度优化都已打开。)非常感谢任何建议!

最佳答案

编译器可以随意忽略 inline_inline。在 Visual C++ 中,您可以尝试 __forceinline这使得编译器内联函数,除非有严重的理由不这样做(这些原因在链接的 MSDN 文章中列出)。

关于C++ _inline 在单例中被忽略并出现在我的探查器中。怎么会?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6454426/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com