Вниз
Скачать: 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.021 c
14-1083610744
Pensioner
2004-05-03 22:59
2004.05.23
Откройте кладовку!


3-1083058475
vas
2004-04-27 13:34
2004.05.23
firebird


1-1083881446
oss
2004-05-07 02:10
2004.05.23
ворд и ShapeRange


8-1079172075
r00t
2004-03-13 13:01
2004.05.23
jpg->bmp ; bmp->jpg


1-1083745021
Marina_S
2004-05-05 12:17
2004.05.23
Динамический массив




   Наверх