有没有办法在 Visual Studio 中查看编译器生成的代码?

时间:2021-03-09 16:14:17

标签: c++ visual-studio

有没有办法在 Visual Studio 中查看 C++ 编译器生成的代码?我所说的生成代码的意思是:编译器生成的函数、函数调用转换、多态行为期间的强制转换等,而不是汇编语言

2 个答案:

答案 0 :(得分:2)

如果您想查看生成的汇编代码(和/或机器代码),您可以在属性中选择它,每个项目或每个源文件。提供各种级别的详细信息。

在解决方案资源管理器中右键单击项目或源文件,选择“属性”命令,然后在“C/C++”选项卡中,选择所需的汇编器输出类型(如果有):

enter image description here

如果您选择任何类型的输出,将在项目的“中间”目录(其中“.obj " 文件放置)默认情况下,但可以使用“ASM 列表位置”属性更改此文件夹。

答案 1 :(得分:0)

根据您所说的“生成的代码”的含义,您有时会在构建目录中看到文件(例如 x64\Debug),例如 #using 指令将生成 .tlh 和 .tli 文件,然后这些文件会被合并到构建。

(来自评论)我没有意识到这一点,但也可以使用 /Fa 编译器选项让 MSVC 直接输出生成的程序集。

相关问题