Руководство по Lua

Руководство по Lua

Статьи

Содержание:

  • Введение
  • Типы данных
  • Область видимости переменных
  • Функции
    • Замороженные переменные
    • Некоторые особенности при вызове функций
    • Переменное число параметров
  • Таблицы


Введение

Lua - это скриптовый язык программирования такой. Быстрый, легкий и удобный.
Изначально Lua создавался как язык программирования баз данных. Фактически, все программирование на Lua сводится к различным манипуляциям с таблицами. Таблицы - это краеугольный камень философии Lua. Таблица - это набор данных, где каждому уникальному ключу соответствует значение. Простой синтаксис и легкость встраивания Lua в приложение обеспечили Lua широкое распростанение в среде игроделов (откуда родом я сам). Во многих игровых компаниях при приеме на работу знание Lua уже MUST.
Теперь небольшой вводный курс в Lua.

Типы данных

nil - ничего, означающее отсутствие какого либо значения
boolean - булевская переменная, может принимать значения true или false
number - число
string - строка
function - функция (да-да, это таже тип данных!)
userdata - специальный тип данных, позволяющий хранить в Lua данные из С (фактически это указатель void*)
thread - сопрограмма Lua (позволяет организовать псевдо-многопоточность)
table - таблица - ассоциативный массив (набор пар ключ-значение), причем в качестве и ключа и значения может выступать любой тип данных (угу, и функция тоже может быть ключом!)

Lua - язык с динамической типизацией, то есть тип переменной устанавливается не заранее, как, например, в С, а в момент присвоения переменной значения.
Примеры:

var = true -- var - переменная типа boolean
var = 1 -- теперь var число
var = "string" -- теперь var строка
var = function(a, b) return a + b end -- а теперь var функция, которая принимает два параметра и возвращает их сумму
var = coroutine.create(var) -- а теперь var сопрограмма
var = {} -- а теперь var таблица
var = nil -- а теперь... теперь нет var!

Два символа -- означают начало однострочного комментария.

Область видимости переменных

Переменные могут быть локальными или глобальными. Локальные переменные объявляются с ключевым словом local и определены внутри блока. При выходе за пределы блока значение локальной переменной становится nil. Блоком является либо файл, либо последовательность выражений между ключевыми словами do и end.
Пример:

local x = 10 -- локальная переменная х

Переменная становится глобальной после первого присвоения ей значения.
Пример:

y = 20 -- глобальная переменная y

Работы в порту (грузчик и развозчик)
Работы в порту (грузчик и развозчик)
5-02-2021, 12:00, Скрипты
Смена производителя шин
Смена производителя шин
7-12-2020, 21:22, Скрипты
Cистема уровней
Cистема уровней
22-12-2020, 12:00, Скрипты
Телепорт-панель на DGS
Телепорт-панель на DGS
6-12-2020, 19:16, Скрипты
Movie
В данной публикации отсутствуют комментарии !

Перед публикацией, советую ознакомится с правилами!