![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Ув. мастера. К вам вопрос о представлении типов данных. [D7, Win2k]
AAAlexeyAAA © (2004-06-15 23:59:00)Предположим есть координаты плоскости(X,Y). Их я могу так: array of array of integer (заранее не известен размер массива). На каждую координату мне нужно "подцепить 3 переменные типа integer"
Как это лучше можно сделать. Главные критерии: минимальный объём памяти, быстрота доступа, пересчёта. Заранее благодарен!
Sandman25 (2004-06-16 12:26:00) [1][7] AlexeyITN (16.06.04 11:41)
Память выделяется при выполнении SetLength, а не при присвоении значения конкретному элементу массива
AlexeyITN (2004-06-16 12:24:00) [2]Удалено модератором
Примечание: Свой вопрос задай в своей ветке
Anatoly Podgoretsky (2004-06-16 12:06:00) [3]Одно и тоже, второе это альтернативная форма объявление, первое класическое объявление, тоже по использованию.
ПсихЪ (2004-06-16 11:55:00) [4]
> 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;
И остался доволен.
AlexeyITN (2004-06-16 11:41:00) [5]Удалено модератором
Примечание: Свой вопрос задай в своей ветке
GuAV (2004-06-16 00:59:00) [6]В один интежер три не впихнёшь. Пути решенияЖ
1. Меняй тип интежер на массив/запись из трёх
2. Используй интежер как поинтер на структуру из трёх интежеров
3. Свой вариант :)
> ...или время позднее...и все спят...:)
Меня, блин, разбудил :)
AAAlexeyAAA (2004-06-16 00:49:00) [7]Наверное я напрвильно выразился...или время позднее...и все спят...:)
есть массив array of array integer...это координаты клеток поля...
мне б хотелось в каждую клетку поля заносить 3 числа типа integer...
Я никак не могу додумать структуру...
Помогите.
AAAlexeyAAA (2004-06-16 00:15:00) [8]Извиняюсь. Это не правильно :(
Как же "в каждую клетку тетради" записать три числа...?
AAAlexeyAAA (2004-06-16 00:11:00) [9]О,...до меня дошло:
array of array of MMM
type
MMM : record
a : integer:
b : integer:
c : integer:
Нормально так ?
AAAlexeyAAA (2004-06-16 00:09:00) [10]К примеру...есть координаты мозаики... квадратной мозаики...:)
на неё можно "подцепить" цвет, тип материала, и шероховатость...
(взято из головы)...
В общем...чтобы я мог "заполнять" эти три переменные на каждую координату...
RealRascal (2004-06-16 00:03:00) [11]
> "подцепить 3 переменные типа integer"
Что это значит?