Является ли _VERSION единственной глобальной переменной, оставшейся в Lua 5.1?

StackOverflow https://stackoverflow.com/questions/146704

  •  02-07-2019
  •  | 
  •  

Вопрос

Озадачен ссылками в документации Lua 5.0 на такие вещи, как _LOADED, LUA_PATH, _ALERT и так далее (которые я не мог использовать в Lua 5.1), я обнаружил, что все это было удалено, а функциональность перенесена в другое место.Прав ли я, полагая, что единственная глобальная переменная, оставшаяся в Lua 5.1, — это _VERSION?

Это было полезно?

Решение

Документы, кажется, думают, что это почти случай....

_G Глобальная переменная (не функция), которая содержит глобальную среду (то есть _g._g = _g).Сам LUA не использует эту переменную;Изменение его стоимости не влияет на какую-либо среду, ни наоборот.(Используйте SetFenv, чтобы изменить среды.)

Похоже, есть еще _PROMPT и _PROMPT2, но только при интерактивном использовании автономного Lua:

Если глобальная переменная _prompt содержит строку, то ее значение используется в качестве приглашения.Точно так же, если глобальная переменная _prompt2 содержит строку, ее значение используется в качестве вторичной подсказки (выпускается во время неполных операторов).Следовательно, оба подсказок могут быть изменены непосредственно в командной строке или в любых программах LUA, назначив _prompt.

Другие советы

Предполагая, что вы не открываете любой библиотеки, есть также _G, pairs, ipairs и newproxy.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top