调试模式

调试模式是1.750版中增加的模式。

这个功能与 "使用调试命令 "选项无关。

在调试模式下启动Emuera

要在调试模式下启动Emuera,请将-Debug作为命令行参数。

传递命令行参数的一个简单方法是:

右键点击EmueraXXXX.exe,选择 "创建快捷方式"。

在创建的快捷方式上点击右键,选择 "属性"。

在属性中,在 "链接到"字符串的末尾添加-Debug

(如果链接是用""括起来的,比如 "C:~~\EmueraXXX.exe",在""后面加上-Debug

双击该快捷方式,在调试模式下启动它。

在调试模式下的操作

当你在调试模式下启动时,会自动创建一个名为debug的文件夹。

变量观察列表和调试控制台日志,如下所述,都保存在调试文件夹中。

当处于调试模式时,除了正常执行的行之外,以;#;开头的行和[IF_DEBUG][ENDIF]之间的行也会被执行。

当不在调试模式时,这些行被当作注释,不被执行。

相反,当处于调试模式时,[IF_NDEBUG][ENDIF]之间的行被视为注释,不被执行。

;#;PRINTL 这一行只在调试模式下执行。
[IF_DEBUG]
  PRINTL 这一行只在调试模式下执行。
[ENDIF]
[IF_NDEBUG]
  PRINTL 这一行只有在非调试模式下才会执行。
[ENDIF]

此外,还有一些指令只在调试模式下发挥作用。

DebugPrintDebugPrintFormDebugPrintLDebugPrintFormL指令的功能与Print语句相同,只是输出到调试窗口。

如果参数为零,Assert指令就会产生错误。 如果参数为非零,它就不做任何事情。

DebugClear指令清除调试窗口的所有字符。没有参数。

这些指令在非调试模式下没有任何作用。

它也不解析参数,所以如果有问题,比如一个错误的DebugPrintForm,在非调试模式下什么也不会发生。

它们被视为无用的指令,而不是注释行,所以它们在SIF语句之后立即使用是安全的。

此外,变量__FILE____LINE____FUNCTION__只在调试模式下返回有意义的值。

在非调试模式下,它们返回0或一个空字符串。

调试窗口