Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.04.10;
Скачать: 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 вся ветка

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

Наверх




Память: 0.47 MB
Время: 0.018 c
3-30305
Sergant
2003-03-23 15:02
2003.04.10
Получение списка объектов MS SQL 6.5


9-30208
Sword-Fish
2002-11-10 01:22
2003.04.10
Упаковка ресурсов


14-30575
TTT
2003-03-24 12:06
2003.04.10
Выстраивается очередь.... Кто за нами?


7-30638
Danik
2003-02-16 11:39
2003.04.10
Копия папки


8-30479
Mak$
2003-01-04 13:36
2003.04.10
Помогите разобраться с графикой !!!