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

типизированный файл и класс   Найти похожие ветки 

← →
D@Nger ©   (2007-03-16 07:51) [0]

Здравствуйте! Пытаюсь в своем классе описать файловую переменную.

type Tmyfile = record
    FIO:String;
    Doljnost:String;
    Oklad:Currency;
    end;

type TMyClass=class(Tobject)
    records:TMyfile;
    f1:file of TMyfile;
    end;


вылазит ошибка: Type "Tmyfile" needs finalization - not allowed in file type

я так понял...тип TmyFile нуждается в финализации - не подерживается в файловом типе

как это понять?


← →
sniknik ©   (2007-03-16 08:13) [1]

это он про переменные типа String в рекорде, тип сам по себе класс инициализируется(создается) при использовании при окончании финализируется(уничтожается)... в файл это не записать... о чем и ошибка.
пользуйся вместо него массивом типа char (либо коротким типом string с указанием длинны)

и еще, сделай packed record, т.к. файл это как раз тот случай когда нужна гарантия на постоянный размер массива, без этого, теоретически, размер записи может меняться от перекомпиляции проги (в зависимости от типа выравнивания).


← →
d@nger ©   (2007-03-16 08:25) [2]

спасибо за исчерпывающую информацию



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

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



Память: 0.45 MB
Время: 0.029 c
15-1173679308
vasIZmax
2007-03-12 09:01
2007.04.08
Первые проблемы...


2-1174044399
Vas
2007-03-16 14:26
2007.04.08
Столбци


2-1174229342
Access
2007-03-18 17:49
2007.04.08
"Овободить" БД - ADO


3-1168425856
Dmitriy_info
2007-01-10 13:44
2007.04.08
Как из Delphi программно создать связь между двумя базами Access?


15-1173986770
Kerk
2007-03-15 22:26
2007.04.08
Выращивание роз




   Наверх