[Logo]
LUA Форум
  [Search] Поиск   [Recent Topics] Последние темы   [Hottest Topics] Горячие темы   [Members]  Список участников   [Groups] На главную страницу 
[Register] Регистрация / 
[Login] Вход 
'.' и [] в Lua не операторы?  XML
Индекс форума » LUA: Общие вопросы
Автор Сообщение
olegbabii
Новичок
[Avatar]

Зарегистрирован: 21/02/2010 19:33:57
Сообщений: 1
Оффлайн

В документации не указан приоритет операций чтения поля по ключу в таблице: .(точка) и [].
Пример: b.time = a[1]

Может '.' и [] в Lua не операторы?:
См. в "Полный синтаксис Lua" на http://www.lua.ru/doc/8.html:
"binop ::= '+' | '-' | '*' | '/' | '^' | '%' | '..' | '<' | '<=' | '>' | '>=' | '==' | '~=' |and | or"
и "var ::= Name | prefixexp '[' exp ']' | prefixexp '.' Name"
z00n
Постоянный посетитель

Зарегистрирован: 15/02/2008 12:15:56
Сообщений: 96
Оффлайн

Операторы или не операторы - это чистая условность. Для инфиксных и префиксных операторов приоритеты описаны отдельно, поскольку они (приоритеты и ассоциативность) не отражены в грамматике.

А так, '.' и '[]' имеют одинаковый приоритет, выше, чем приоритет любого префиксного или инфиксного оператора, и левую ассоциативность.
 
Индекс форума » LUA: Общие вопросы
Перейти:   
Powered by JForum 2.1.8 © JForum Team