Oh *_*ooo 5 delphi delphi-10-seattle
我试图在我的代码上运行调试,但不知何故它停止工作.这是一个片段和它显示的绿线:
clean它..stat和.dcu.Release和Debug模式,重建,重新编译它们.Debugging选项Project -> Options -> Delphi compiling都设置为true.search paths.我究竟做错了什么?
它是一种正常的编译器行为.当程序(代码行)从未在程序内的任何地方调用时,就会发生这种情况.编译器会跳过这些过程和函数(其中的所有代码行).看图.
您只需要检查过程(行)是否真的至少从应用程序内的任何位置调用过.
附加
当代码行永远不能被调用时也会发生这种情况,并且可以在编译时评估这个(逻辑语句)(结果是事先知道的,并且在运行时不会受到影响).编译器优化跳过这些行的代码.这就是为什么它不接受它们的休息.
这是后一种程序的反汇编.第if false then ...37和38行的陈述被省略: