如果有办法判断编译器是否真的内联C++函数
If there a way to tell if C++ compiler actually inline a function or not?
我只是想知道是否有一种方法(例如查看生成的汇编代码或我不知道(来查看C++编译器是否真的内联了一个函数?谢谢。
inline
是一个建议,但编译器可以自由地实际做或不做。据我所知,没有办法强制编译器内联,我会说编译器知道得更好。
要查看编译器是否做到了,我可以想到两种方法:
- 在调试模式下查看二进制输出,看看是否有调用
- 添加时间分析说明。如果在内联声明时时间减少,则意味着编译器确实内联了它。
相关文章:
- 在决定是通过参考还是通过价值时,尺寸真的是一个问题吗
- 字节真的是最小可寻址单元吗
- 如果我真的真的想从 STL 容器继承,并且我继承构造函数并删除新运算符,会发生什么?
- 如何在 std::vector 中找到<bool>哪些索引是真的?
- std::string 的对象真的可以移动吗?
- 在这种情况下,我真的复制了字节还是复制了字符?
- int8_t和uint8_t真的是整数吗?它们有什么用?
- 真的没有来自 std::string_view 的 std::string 的显式构造函数吗?
- 查找不等式为真的次数时出现问题
- 考虑到其他好处,关键字'auto'真的有助于简化调试C++吗?
- 有没有更好的方法来处理异常? try-catch块真的很丑
- 在为嵌套类定义行外友元时,我真的必须打破封装吗?
- 你如何理解"std: :forward is just syntactic sugar"?这是真的吗?
- "std::forward"和"std::move"真的不生成代码吗?
- VS 2017 和 2019 运行 c++ 真的很慢
- 结构和类在C++中真的等价吗?
- 指向数组unique_ptr在调用 release() 后会自动释放动态内存,这是真的吗?
- 运算符重载是否真的需要返回值C++?
- 我想使用 "cout" 命令慢慢打印文本,但我真的找不到任何解决方案
- " sizeof "操作员在编程中真的很重要吗,尤其是在构建大型应用程序时?