Локальные и глобальные переменные - Jass - Создание карт - Каталог статей - Все для WarCraft - WarCraft III | Dota Allstars
0 часов
0


20.05.2012





Логин:
Пароль:







Главная » Статьи » Создание карт » Jass

Локальные и глобальные переменные
08.09.2009, 18:46:36

Локальные и глобальные переменные - первый шаг в JASS. Что такое локальные и глобальные переменные? Обьсню. Глобальные переменные это переменные, которыми мы обычно пользовались. Через редактор переменных. А что такое локальные переменные? Локальные переменные это переменные, которые слздаются в функции и когда функция закончится перемеенная больше не будет существовать. Как же создавать такие переменные? Начнём с того, что переменные бывают многих типов. Например - integer, unit, effect, real и т.д. Рассмотрим действие.
Code
local integer i

Что делает это действие? Обьявляет локальную переменную типа integer (целочисленная) с названием "i". Ты спросишь, зачем нужны локальные переменные? Нужны они для того, чтобы "не засорять редактор переменных" ну и т.д. Ведь локальная переменная используется только в одной функции. Как присвоить значение переменной? Смотрим.
Code
set i = 1

set - переводиться как "установить значение" (примерно). Установить значение локальной переменной i с значением 1. Думаю, здесь всё понятно. Пошли далее. Ведь кроме локальных переменных есть ещё и глобальные переменные!
Code
set udg_i = 1

Всё тоже самое... Но что такое ubg_? Эта пристака обозначает, что переменная глобальная. Локальная переменная пишется без всяких приставок. Есть тип переменной, которой нету в редаткоре переменных. Называется он handle. Что он обозначает? Всё он обозначает! Он может обозначать и юнита, и целочислнную, и точку и т.д. Тут думаю комментарии излишние.
Code
local handle h

Теперь поговорим о массивах. Что такое массивы? Обьясню на примере. Мы создаём 100 юнитов. И что, мы для каждого будет делать переменную типа unit? Нет. Мы лучше повесимся. Но есть второй способ - массивы.
Code
local integer array i

Всё как раньше. Но появилось array. Что такое array? это значит, что переменная массивная. Как ей присвоить значение?
Code
set i[0] = 12

Всё как раньше, но появились []. Зачем они? Это индекс. Номер ячейки перемеенной, куда мы будем записывать наше значение. Надеюсь, вопросов нет.

Спасибо за внимание.

Автор статьи: Хамяг

Категория: Jass | Добавил: Shegan
Просмотров: 687
Всего комментариев: 3
25.12.2010
Сообщение #3.




если честно не всё понятно, не до конца всё раскрыто dry


01.04.2010
Сообщение #2.




хоть что-то теперь про jass знаю... wacko


28.09.2009
Сообщение #1.
Spirit_of_Dragon



нифига ничего не раскрыто


Имя *:
Email:
Код *: