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

Работа с классами   Найти похожие ветки 

← →
DenisX   (2003-03-30 15:30) [0]

Всем привет! Подскажите в чем проблема? При использовании метода
Create возникает ошибка. Заранее благодарю.


unit VObj;

interface

uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
Dialogs, Menus, ComCtrls, Grids;

type
str22=string[22];

TElement=record
Fam:str22;
Kniga:str22;
Shifr:str22;
God:integer;
Kolvo:integer;
end;

Mas=array of TElement;
TAvtor=class
pV:^Mas;//
schet, schet2:integer;
constructor Create(a:integer);
destructor Destroy;
end;

FT=file of TElement;

implementation

uses Vec, Poi, Dob;

constructor TAvtor.Create(a:integer);
begin
GetMem(pV,a); //Здесь возникает ошибка
schet2:=a;
schet:=a;
end;

destructor TAvtor.Destroy;
begin
FreeMem(pV);
pV:=nil;
end;

end.


← →
Palladin ©   (2003-03-30 16:34) [1]

когда ты говоришь array of TYPE, то переменная этого типа уже является указателем,

что получается в твоем случае...
pV является указателем на указатель... тоесть на область памяти в 4 байта, ты же под него выделяешь [a] байт...
конечно будет ошибка...

unit VObj;

interface

uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
Dialogs, Menus, ComCtrls, Grids;

type
str22=string[22];

TElement=record
Fam:str22;
Kniga:str22;
Shifr:str22;
God:integer;
Kolvo:integer;
end;

Mas=array of TElement;
TAvtor=class
pV:Mas;//
schet, schet2:integer;
constructor Create(a:integer);
destructor Destroy;
end;

FT=file of TElement;

implementation

uses Vec, Poi, Dob;

constructor TAvtor.Create(a:integer);
begin
SetLength(pV,a); //Здесь больше не будет возникать ошибки
schet2:=a;
schet:=a;
end;

destructor TAvtor.Destroy;
begin
pV:=nil;
end;

end.



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

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



Память: 0.45 MB
Время: 0.011 c
8-30462
Новичек
2003-01-04 13:57
2003.04.10
Можно ли проиграть Wave-файл без применения MediaPlayer?


4-30667
KDenis
2003-02-10 19:41
2003.04.10
Как узнать Handle процесса по Handle у его главного окна?


9-30202
deema123
2002-10-30 18:02
2003.04.10
Как написать Змейку


1-30340
nejest
2003-03-31 15:50
2003.04.10
Перемещнеие каталога с подкаталогами и файлами


14-30519
Феликс
2003-03-23 22:36
2003.04.10
Упражнения для развития дыхалки




   Наверх