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

Вниз

Указатель на массив   Найти похожие ветки 

 
cyber-pilot   (2010-01-31 10:10) [0]

Уже несколько раз встречал конструкцию типа такой:


type
 PMas = ^TMas;
 TMas = array[1..1000] of Real;

...

var
 vMas: PMas;


А потом, чтобы работать с массивом выделяют для него память с помощью GetMem или каким-то другим способом. У меня вопрос, чем этот способ лучше использования обычных динамических массивов?


 
Ганя   (2010-01-31 10:21) [1]

Ничем не лучше, просто это ручное управление временем жизни, а не автоматическое. Может потребоваться например в случае, когда массив - локальная переменная, но не должна автоматически уничтожиться при выходе из процедуры \ метода (например, ее добавили в глобальный список)


 
Плохиш ©   (2010-01-31 11:11) [2]


> А потом, чтобы работать с массивом выделяют для него память
> с помощью GetMem или каким-то другим способом. У меня вопрос,
>  чем этот способ лучше использования обычных динамических
> массивов?
>

Динамические массивы имелись не всегда.


 
Вася   (2010-01-31 16:37) [3]

хм...а если написать так:

type
PMas = ^TMas;
TMas = array[0..0] of Real;

var vMas: PMas;


что-то кардинально изменится?обращаться к vMas[20] ведь всё равно можно будет(надо тока следить чтоб за пределы не выйти).


 
Jeer ©   (2010-01-31 18:37) [4]


> У меня вопрос, чем этот способ лучше использования обычных
> динамических массивов?


В общем типовом случае забудь про него.



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

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

Наверх




Память: 0.47 MB
Время: 0.007 c
2-1264935712
Of land
2010-01-31 14:01
2010.04.04
Как защитить таблицу паролем


15-1263466132
Сергей М.
2010-01-14 13:48
2010.04.04
Порт пакета-эксперта *.lpk -> *.dpk


2-1265141725
serko
2010-02-02 23:15
2010.04.04
Как проверить существует ли база?


2-1265190292
s_t_d
2010-02-03 12:44
2010.04.04
Delphi_Excel Как создать копию раб. листа?


6-1207310729
Pochemuk
2008-04-04 16:05
2010.04.04
Ремэпинг без подмены IP. Как сделать?