XGM Forum
Сайт - Статьи - Проекты - Ресурсы - Блоги

Форуме в режиме ТОЛЬКО ЧТЕНИЕ. Вы можете задать вопросы в Q/A на сайте, либо создать свой проект или ресурс.
Вернуться   XGM Forum > Warcraft> Академия: форум для вопросов> Jass
Ник
Пароль
Войти через VK в один клик
Сайт использует только имя.

Ответ
 
NCrashed

offline
Опыт: 13,553
Активность:
Двумерные массивы
Помогите, как объявить двумерный массив? Нашел в поиске тему, но все равно не понял как их объявлять.
Старый 14.11.2008, 16:53
J
expert
offline
Опыт: 48,447
Активность:
обявить? никак, в варе доступны только одномерные массива, с размером [0..8190]
однако можно сделать чтото типо
Код:
globals
    constant integer Width = 90
    <type> array <name>
endglobals

function <name>2 takes integer index1, integer index2 returns <type>
    return <name>[index1*Width+index2]
endfunction

и обращаясь к функции <name>2(), будет вид будто обращаешся к двумерной пеоеменной
<name> [0..R2I(8192/Width)-1] [0..Width-1]
т.е. при Width = 90, масив будет с размерами [0..90][0..89]

Отредактировано Jon, 14.11.2008 в 17:10.
Старый 14.11.2008, 17:03
NCrashed

offline
Опыт: 13,553
Активность:
Спасибо, вот я удивляюсь: ни многомерных массивов, ни функций уничтожения локальных переменных в джаззе нет(
Старый 14.11.2008, 17:08
NETRAT

offline
Опыт: 83,712
Активность:
нету в жассе двумерных массивов, это сказка
Старый 14.11.2008, 17:09
Scorched

offline
Опыт: 7,912
Активность:
Цитата:
функций уничтожения локальных переменных в джаззе нет

а зачем их уничтожать?
Старый 14.11.2008, 18:56
I.Todd

offline
Опыт: 12,046
Активность:
Цитата:
Сообщение от Scorched
а зачем их уничтожать?

Чтоб сказку сделать былью!

А вообще, двумерные массивы по сути везде реализованы одинаково, ты можешь брать как вариант массив строк и получать второй индекс по номеру символа в строке. Суть от этого не меняется. Двумерные массивы везде по сути сказка, ибо доступ к памяти индексируется линейно )
Старый 14.11.2008, 19:55
NCrashed

offline
Опыт: 13,553
Активность:
I.Todd, по сути мы машина понимает только двоичный код), ясень пень что двумерные массивы - псевдоструктура. Но эта сказка есть почти во всех языках программирования.

Scorched, память высвобождать
Старый 14.11.2008, 20:44
adic3x

offline
Опыт: 108,439
Активность:
Цитата:
Двумерные массивы везде по сути сказка

ибо память плоская)
двумерный массив в варе - кешь, со всеми его плюсами и минусами
Старый 15.11.2008, 09:24
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы можете скачивать файлы

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 21:19.