Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何查看C++;在VisualStudio2010中的功能?_C++_.net_Visual Studio 2010_Visual C++_.net Assembly - Fatal编程技术网

C++ 如何查看C++;在VisualStudio2010中的功能?

C++ 如何查看C++;在VisualStudio2010中的功能?,c++,.net,visual-studio-2010,visual-c++,.net-assembly,C++,.net,Visual Studio 2010,Visual C++,.net Assembly,查看编译器从我的文件生成的代码的最佳(最快)方式是什么?我主要使用C++,但是也适用于.NET语言的解决方案。对于C++项目,< p>,编译以获得程序集列表。 对于.NET程序集,有。对于.NET,您可以使用框架附带的ildasm工具来查看IL。在Visual Studio中,转到项目的属性页,然后转到C/C++→ 输出文件→ 汇编程序输出。它应该是这样的: 注意对应的编译器开关,所有的变量 /FA:仅组件列表 /FAcs:组件、机器代码和源代码 /FAc:带有机器代码的组件 /FAs:带

查看编译器从我的文件生成的代码的最佳(最快)方式是什么?我主要使用C++,但是也适用于.NET语言的解决方案。对于C++项目,

< p>,编译以获得程序集列表。


对于.NET程序集,有。

对于.NET,您可以使用框架附带的
ildasm
工具来查看IL。

在Visual Studio中,转到项目的属性页,然后转到
C/C++→ 输出文件→  汇编程序输出
。它应该是这样的:

注意对应的编译器开关,所有的变量

  • /FA
    :仅组件列表
  • /FAcs
    :组件、机器代码和源代码
  • /FAc
    :带有机器代码的组件
  • /FAs
    :带有源代码的程序集
在“汇编器输出”选项下面有一个“ASM列表位置”选项。这相当于
/Fa
开关(注意大写!),它设置输出列表的文件路径

您还可以在调试时查看程序集(在断点处),通过右键单击源文件文本区域中的当前行并单击“转到反汇编”完成相应的源代码

它将跳转到您在单独选项卡中右键单击的行处的程序集。清单将类似于此:


是的,我知道,截图不是来自VisualStudio2010,但步骤和总体外观是相同的。我只是没有立即访问VS2010的权限,无法使用它进行屏幕截图。:-)

设置一个断点,按CTRL+F11。这个答案太棒了。然而,我相信当你让它做汇编输出时,我相信它不会创建二进制文件。如果我没记错的话,您应该在某个地方注意到。@MooingDuck:对于单独的预处理器运行(/P),这是正确的,但至少在VC2010中,/FA变体仍然会生成二进制文件。