Функция os.exit().

Страницы: 1
RSS
Функция os.exit().
 
Из main() вызов функции f(p), в начале которой проверяется параметр p:

Код
if p==nil then
   message("Ошибка.")
   os.exit()
end
Раньше я os.exit() никогда не использовал, ожидал, что просто завершится скрипт. Вместо этого Quik  закрылся в один миг, окна с сообщением "Ошибка" я не видел. Обычно Квик спрашивает подтверждение "Вы действительно желаете завершить работу?", но в данной ситуации этого не было.

Вопрос: как из функции, которая вызвана из другой, возможно, с большой вложенностью, вывести сообщение и затем завершить работу скрипта без цепочки "return"?
 
Попробуйте функцию error (message [, level])
 
Цитата
Sergey Gorokhov пишет:
Попробуйте функцию error (message [, level])
Цитата
Некто пишет:
Вопрос: как из функции, которая вызвана из другой, возможно, с большой вложенностью, вывести сообщение и затем завершить работу скрипта без цепочки "return"?
Завершить работу скрипта прямо в той функции, где обнаружена ошибка, без возврата и обработки.
error() во-первых требует вызова ра?ом во-вторых, возвращает управление.

1. А с os.exit() в Quik что не так?

2. Можно ли в QLua использовать assert()?
 
Цитата
Sergey Gorokhov пишет:
Попробуйте функцию error (message [, level])
Так она, вроде, не прекращает выполнение скрипта?
 
Цитата
Некто пишет:
Завершить работу скрипта прямо в той функции, где обнаружена ошибка
Ответ уже был дан, функция error решает вопрос
Цитата
Некто пишет:
error() во-первых требует вызова ра?ом во-вторых, возвращает управление.
А Вы проверьте.
Цитата
Некто пишет:
1. А с os.exit() в Quik что не так?
Согласно документации на Lua
Цитата
os.exit ([code])
Calls the C function exit, with an optional code, to terminate the host program.


Цитата
Некто пишет:
2. Можно ли в QLua использовать assert()?
Можно все что можно в обычном Lua
 
Цитата
Некто пишет:
Цитата
Sergey Gorokhov пишет:
Попробуйте функцию error (message [, level])
Так она, вроде, не прекращает выполнение скрипта?
Если рекомендация не вызывает доверия, никто не мешает проверить
Страницы: 1
Читают тему
Наверх