如果您在VisualStudio中的一行旁边放置断点,使用自定义工具构建项目,并运行已配置的VS调试器,调试器如何知道可执行文件中的哪一行属于源代码中的断点行?因为编译器可能在制作可执行文件之前优化代码.
如果您在VisualStudio中的一行旁边放置断点,使用自定义工具构建项目,并运行已配置的VS调试器,调试器如何知道可执行文件中的哪一行属于源代码中的断点行?因为编译器可能在制作可执行文件之前优化代码.
因为编译器很可能在制作可执行文件之前优化代码.
不,这是调试版本和发布版本之间的巨大区别.
调试版本将包含许多关于程序的额外信息,而不是执行程序所需的信息.特别是,所有名称、类、函数和变量都在调试版本中.Debug构建将构建的程序与您编写的代码几乎一一对应.
您会发现调试优化程序与调试调试版本有很大的不同.
当您发现一个只在优化的发布版本中表现出来的错误时,您就遇到了一个难题,需要再来一壶咖啡.