Вниз
Скачать: CL | DM;

Динамический массив   Найти похожие ветки 

 
Marina_S   (2004-05-05 12:17) [0]

Как правильно работать с динамическим массивом в Delphi?
При выполнении программы
var
 image_line : array of array of RGB_pixel;
.....
setlength(image_line,MaxLines,MaxWidth);
....
выдается ошибка класса class EAccessViolation :(
Как этого избежать?


 
Skier ©   (2004-05-05 12:24) [1]

F1 + Multidimensional dynamic arrays


 
MU   (2004-05-05 12:25) [2]

Поищите в Help Multidimensional dynamic arrays


 
марсианин ©   (2004-05-05 12:28) [3]

двумерный массив я обычно так инициализировал:

Setlength(image_line, MaxLines);

for i:=0 to MaxLines-1 do
 Setlength(Image_line[i], MaxWidth);

т.е. каждый элемент по-отдельности...
и уничтожаю тоже в цикле...

но, так как, очевидно, выделяешь память для изображения, настоятельно рекомендуется выделять память 1-м куском

ImagePixels : array of RGB_pixel;
setlength(ImagePixels, MaxLines*MaxWidth);


 
MBo ©   (2004-05-05 13:14) [4]

В этих строках:var
>image_line : array of array of RGB_pixel;
>setlength(image_line,MaxLines,MaxWidth);
все правильно, ошибка где-то еще.

И марсианин разумный совет дает про память одним куском.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.022 c
3-1083035329
fbi
2004-04-27 07:08
2004.05.23
Фильтрация


3-1083300623
nstur
2004-04-30 08:50
2004.05.23
По Oracle


9-1073499972
ork
2004-01-07 21:26
2004.05.23
Текстовая RPG


4-1081256565
Kme
2004-04-06 17:02
2004.05.23
Безвозвратное удаление


4-1080822821
AlexeyITN
2004-04-01 16:33
2004.05.23
WinAPI Return Values and Errors




   Наверх