Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.07.04;
Скачать: CL | DM;

Вниз

Ув. мастера. К вам вопрос о представлении типов данных.   Найти похожие ветки 

 
AAAlexeyAAA   (2004-06-15 23:59) [0]

Предположим есть координаты плоскости(X,Y). Их я могу так: array of array of integer (заранее не известен размер массива). На каждую координату мне нужно "подцепить 3 переменные типа integer"
Как это лучше можно сделать. Главные критерии: минимальный объём памяти, быстрота доступа, пересчёта. Заранее благодарен!


 
RealRascal ©   (2004-06-16 00:03) [1]


> "подцепить 3 переменные типа integer"

Что это значит?


 
AAAlexeyAAA   (2004-06-16 00:09) [2]

К примеру...есть координаты мозаики... квадратной мозаики...:)
на неё можно "подцепить" цвет, тип материала, и шероховатость...
(взято из головы)...
В общем...чтобы я мог "заполнять" эти три переменные на каждую координату...


 
AAAlexeyAAA   (2004-06-16 00:11) [3]

О,...до меня дошло:
array of array of MMM

type
MMM : record
a : integer:
b : integer:
c : integer:

Нормально так ?


 
AAAlexeyAAA   (2004-06-16 00:15) [4]

Извиняюсь. Это не правильно :(
Как же "в каждую клетку тетради" записать три числа...?


 
AAAlexeyAAA   (2004-06-16 00:49) [5]

Наверное я напрвильно выразился...или время позднее...и все спят...:)
есть массив array of array integer...это координаты клеток поля...
мне б хотелось в каждую клетку поля заносить 3 числа типа integer...
Я никак не могу додумать структуру...
Помогите.


 
GuAV ©   (2004-06-16 00:59) [6]

В один интежер три не впихнёшь. Пути решенияЖ
1. Меняй тип интежер на массив/запись из трёх
2. Используй интежер как поинтер на структуру из трёх интежеров
3. Свой вариант :)

> ...или время позднее...и все спят...:)

Меня, блин, разбудил :)


 
AlexeyITN   (2004-06-16 11:41) [7]

Удалено модератором
Примечание: Свой вопрос задай в своей ветке


 
ПсихЪ   (2004-06-16 11:55) [8]


> AAAlexeyAAA

Ты профессионально издеваешься над народом!!! Молодец!!! И твоя идея устроить на форуме ЧАТ, тоже "очень интересна и оригинальна"!

Знаешь такие словосочетания - "массив записей", "массив массивов записей", "массив переменных", "массив переменных типа массив массивов записей"? Сложно?

Создал запись:

type
 TYPE_NAME = record
   x, y, z : integer;
 end;

Создал переменную:

var
 VarName1 : array[0..99] of array[0..99] of TYPE_NAME; // или
 VarName2 : array[0..99, 0..99] of TYPE_NAME // это одно и то же

Обработал в цикле:

for i := 0 to 99 do
 for j := 0 to99 do
 begin
   VarName1[i][j].x := i*j; // или
   VarName2[i, j].y := i*j; // это одно и то же
 end;

И остался доволен.


 
Anatoly Podgoretsky ©   (2004-06-16 12:06) [9]

Одно и тоже, второе это альтернативная форма объявление, первое класическое объявление, тоже по использованию.


 
AlexeyITN   (2004-06-16 12:24) [10]

Удалено модератором
Примечание: Свой вопрос задай в своей ветке


 
Sandman25 ©   (2004-06-16 12:26) [11]

[7] AlexeyITN   (16.06.04 11:41)

Память выделяется при выполнении SetLength, а не при присвоении значения конкретному элементу массива



Страницы: 1 вся ветка

Текущий архив: 2004.07.04;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.068 c
1-1087926704
HF-Trade
2004-06-22 21:51
2004.07.04
Film.Transparent:=True;


1-1087891033
Nika
2004-06-22 11:57
2004.07.04
Помогите с Treeview


1-1087746305
g-l-u-k
2004-06-20 19:45
2004.07.04
Загрузка позиции TrackBar из файла


14-1087046409
juiceman
2004-06-12 17:20
2004.07.04
что такое...


1-1087887519
Tom
2004-06-22 10:58
2004.07.04
Надо загрузить функцию из DLL написанной на C...