临时对象创建

Temporary object creation

本文关键字:创建 临时对象      更新时间:2023-10-16

有人知道是否有可能在任何C 上启用任何形式的登录兼容的编译器(Visual Studios,G 等),以便我可以发现何时创建临时对象?

例如:

假设我有一个函数f(char x),但我用f(46)

称呼此功能

我会在日志中看到 -

temporary char created promoting int @ function param f(46)(或类似的东西)

我已经阅读了VS编译器开关选项,看来这不是一个选项。

我知道,在新标准中,rvalue reference(&&)的概念可用于检测大多数临时语义语义的临时性,但这涉及添加新的代码/兼容的编译器。

那可以做到吗?还是对编译器的特权知识?

IDE中更有用的是内联注释(因为我假设您想通过最小化这些温度来优化?)。在实践中,最简单的方法是修改GCC或G ,并使他们与Visual Studio插件或其他内容进行交谈。他们可以用寄存器分配和所有内容进行注释。哇,这实际上真的很有帮助。

除非这样的努力,但我不知道,最好的方法就是学会阅读大会。在Visual Studio中,您可以将编译的组件与超级有用的源显示内联。