 |
01.03.2009, 13:19
|
#1
|
[object Object]
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,364
Написано 2,476 полезных сообщений (для 6,864 пользователей)
|
Динамические массивы
Помогите создать динамический массив в BlitzMax.
Пишу 2D редактор на BlitzMax.
Код следующий:
Global Map_TileSet:TImage
Global Map_Tileset_FileName:String
Global Map_Width:Int
Global Map_Height:Int
Global Map_Data:Int[512, 512, 2]
Function Map_Create()
Map_Width = 10
Map_Height = 10
For Local l:Int = 0 To 2
For Local poy:Int = 0 To 10
For Local pox:Int = 0 To 10
Map_Data[pox, poy, l] = - 1
Next
Next
Next
End Function
Хочется чтоб Map_Data был динамический, при этом прибегать к типам не очень хочется.
Заранее спасибо.
__________________
Retry, Abort, Ignore? █
Intel Core i7-9700 4.70 Ghz; 64Gb; Nvidia RTX 4090 3070
AMD Ryzen 7 3800X 4.3Ghz; 64Gb; Nvidia 1070Ti
AMD Ryzen 7 1700X 3.4Ghz; 8Gb; AMD RX 570
AMD Athlon II 2.6Ghz; 8Gb; Nvidia GTX 750 Ti
|
(Offline)
|
|
01.03.2009, 13:24
|
#2
|
|
Ответ: Динамические массивы
Randomize
делай масив указателей на масив указателей на целые числа и будет тебе 2д динамический масив
но тебе всё равно заранее прийдется знать размер масива перед его созданием (можно оформить это ввиде типа который сам будет пересоздавать масив и копировать старый с новый)
Последний раз редактировалось jimon, 01.03.2009 в 14:00.
|
|
|
01.03.2009, 15:04
|
#3
|
[object Object]
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,364
Написано 2,476 полезных сообщений (для 6,864 пользователей)
|
Ответ: Динамические массивы
Ааа жесть)))
Ничё не понял...
Спрошу так... Как сделать List и хранить в нём Integer`ы?
__________________
Retry, Abort, Ignore? █
Intel Core i7-9700 4.70 Ghz; 64Gb; Nvidia RTX 4090 3070
AMD Ryzen 7 3800X 4.3Ghz; 64Gb; Nvidia 1070Ti
AMD Ryzen 7 1700X 3.4Ghz; 8Gb; AMD RX 570
AMD Athlon II 2.6Ghz; 8Gb; Nvidia GTX 750 Ti
|
(Offline)
|
|
01.03.2009, 15:36
|
#4
|
|
Ответ: Динамические массивы
Randomize
нельзя так 
пишешь тип в котором одно поле - integer, и хранишь этот тип в списке
крайний случай, переводить целое в строку и хранить строки
|
|
|
01.03.2009, 15:48
|
#5
|
Злобный Админ
Регистрация: 04.09.2005
Сообщений: 5,926
Написано 3,415 полезных сообщений (для 9,330 пользователей)
|
Ответ: Динамические массивы
А что
Global arMap:int[,]
local x:int=256, y:int=256
arMap=new Int[x,y]
Уже неканает?
__________________
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
01.03.2009, 16:14
|
#6
|
|
Ответ: Динамические массивы
SBJoker
я блицмакс уже забыл 
|
|
|
03.03.2009, 00:39
|
#7
|
[object Object]
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,364
Написано 2,476 полезных сообщений (для 6,864 пользователей)
|
Ответ: Динамические массивы
Ух спасибо большое!
Низкий поклон.
Я уж думал на B3D писать + FastImage используя переDIMование.
Теперь и ключик на FastImage покупать не надо.
А что
Global arMap:int[,]
local x:int=256, y:int=256
arMap=new Int[x,y]
Уже неканает?
|
Да я деже этого не знал))
Новичок в BM я совсем.
Маленький ещё.
C ООП только работать умею, а азов увы не знаю  ))
Кроме клона Crimsonland пока ничего не делал.
Выкладывать не буду ибо стыдно.
__________________
Retry, Abort, Ignore? █
Intel Core i7-9700 4.70 Ghz; 64Gb; Nvidia RTX 4090 3070
AMD Ryzen 7 3800X 4.3Ghz; 64Gb; Nvidia 1070Ti
AMD Ryzen 7 1700X 3.4Ghz; 8Gb; AMD RX 570
AMD Athlon II 2.6Ghz; 8Gb; Nvidia GTX 750 Ti
|
(Offline)
|
|
06.08.2009, 21:18
|
#8
|
Оператор ЭВМ
Регистрация: 09.10.2007
Сообщений: 45
Написано 8 полезных сообщений (для 16 пользователей)
|
Ответ: Динамические массивы
Сообщение от SBJoker
А что
Global arMap:int[,]
local x:int=256, y:int=256
arMap=new Int[x,y]
Уже неканает?
|
в таком случае содержимое будет сбрасываться. все равно придется копировать сначала в левый массив а потом из левого в назад в "динамический"

имхо bmx и так все сваливает на проц. лучше создать сразу большой массив и не парить цп.
|
(Offline)
|
|
06.08.2009, 23:09
|
#9
|
Злобный Админ
Регистрация: 04.09.2005
Сообщений: 5,926
Написано 3,415 полезных сообщений (для 9,330 пользователей)
|
Ответ: Динамические массивы
Курите раздела хелпа по бмаксу Slices, там много интересного про инжексный доступ к символам в строке, в усечении строк и миссивов с любой стороны, и ресайз без потери данных.
Когда ж народ читать то научится..ё маё...
__________________
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 09:54.
|