В случаях, когда команда возврата возвращает значение, утилита очевидна. Я видел, что команда return использовалась даже тогда, когда она на вид не нужна. Позвольте мне показать следующие примеры:

Пример 1:

Loop
{
    if a_index > 25
        break  ; Terminate the loop
    if a_index < 20
        continue ; Skip the below and start a new iteration
    MsgBox, a_index = %a_index% ; This will display only the numbers 20 through 25
}

Пример 2:

IfWinExist, Untitled - Notepad
{
    WinActivate  ; Automatically uses the window found above.   
    return
}

Почему команда return используется в Примере 2, но не используется в Примере 1? Оба примера скопированы / изменены-вставлены из документации autohotkey.com.

1 ответ1

0

Return - это команда потока управления, которая означает «Вернуть путь выполнения кода к месту, которое вызвало эту подпрограмму, иначе завершиться». Таким образом, вы можете создавать подпрограммы, которые вызываются из нескольких мест в вашем скрипте. Он может возвращать значение при необходимости, но основное внимание уделяется возвращению контроля над тем, какой код выполняется.

Если ваш Пример 2 последовал

IfWinExist, Untitled - Notepad
{
    WinActivate  ; Automatically uses the window found above.   
    return
}
Run Notepade.exe
Return

Новый экземпляр блокнота перед возвратом к вызывающему коду (например, вашей горячей клавише).

Узнайте больше о команде возврата на autohotkey.com.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .