-- Обработка исключений связана с вызовом pcall() local status, err = pcall(function () a=5/0 end) print(status) print(err) -- Можно самому вызывать исключение if not (a and b) then error() end * Исключения генерятся функцией error(message [, level]) * и могут быть перехвачены только внутри вызова pcall(f, arg1, ...) Пример: #!/usr/bin/lua function test_f(...) a = ... if (a ~= 1) then error("Incorrect call") end print ("Ok!") return 100,200; end res = { pcall(test_f, 1) } for i,v in ipairs(res) do print(i,' ',v) end
Lua Справочник v0.05 © 2007-2024 Igor Salnikov aka SunDoctor