1

让我有一个类似AutoHotkey 文档中的功能:

Goto, MyLabel
...
MyLabel:
Sleep, 100
...

其实我不需要跳转到MyLabel,我只需要MyLabel按照我代码中命令行的直接流程运行即可。

实际上,我正在寻找的只是一个像“Do MyLabel!”这样的命令。或“执行MyLabel!” 或“跑MyLabel!” 也是。

尽管根本不需要跳转任何命令行,但实际上Goto是 AutoHotkey 提供的唯一方法吗?

4

1 回答 1

1

如果输入 Goto,行为是这样的:

执行的下一行将是标签后的一行,代码继续从该位置运行。

虽然 Goto 可以用于快速和肮脏的编程,但强烈建议像瘟疫一样避免它,因为如果你有几个 Goto,我很难理解代码的行为方式。

如果您需要乱序执行行,编写函数是一种更简洁的方法。

“Do” Mylabel 更像是您在另一个问题中问过的 Gosub 命令。

更好的解决方案是您自己的功能。

; do some stuff here
MyFunction()
; do some more stuff here
return

MyFunction()
{
  ; do stuff in here
  return
}
于 2013-09-27T17:49:46.293 回答