Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Ссылки [D7, WinXP]


VasRog ©   (2004-12-11 18:01:00) 

Подскажите, пожалуйста,
1:  У меня определено:

   type
   Tcountarray = array [0..255] of longword;
   Pcountarray = ^Tcountarray;

Т.е. масив ссылок.  Можно ли не определяя (инициализируя) массив типа Tcountarray.  Написать так:

var
counts: Pcountarray;
begin
for ii:= 0 to 255 do
 counts^[ii]:= 0;
end;

2.  Как можно создать массив ссылок на уже существующий динамический массив.

type
pixelightness = array of byte;
Ppointerpixelightness = ^pixelightness;

var
lightness: pixelightness;
links: Ppointerpixelightness;

begin
а как дальше ?


VasRog   (2004-12-12 00:57:00) [1]

Все.  Спасибо.  Разобрался.
> А зачем Вам НЕСКОЛЬКО указателей на ОДИН И ТОТ ЖЕ статический
> массив?

Это просто я глючу. :)


begin...end   (2004-12-11 18:30:00) [2]

> [2] VasRog   (11.12.04 18:21)

> Вот это то,  что нужно,  но как это сделать.

Адрес переменной можно получить с помощью оператора @ или функции Addr. Поэтому можно написать, например, так:

var
 MyArray: TCountArray;
 pMyArray: PCountArray;

begin
 pMyArray := @MyArray
end.


> Т.е. мне нужно для статического массива создать массив указателей
> на него.

А зачем Вам НЕСКОЛЬКО указателей на ОДИН И ТОТ ЖЕ статический массив?


VasRog   (2004-12-11 18:21:00) [3]

либо присвоить этой переменной адрес статической переменной типа TCountArray

Вот это то,  что нужно,  но как это сделать. Т.е. мне нужно для статическогомассива создать массив указателей на него.  Для динамическогоиз 2. я уже понял.


begin...end   (2004-12-11 18:09:00) [4]

> VasRog   (11.12.04 18:01)

1. Так писать нельзя. Нужно вначале либо выделить участок памяти, на первый байт которого будет указывать переменная Counts (с помощью процедуры New), либо присвоить этой переменной адрес статической переменной типа TCountArray.
2. Я не понял. К тому же, переменная динамического массива - это уже указатель.


Наверх

Титульная страница Поиск, карта сайта Написать письмо