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

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

Наверх




Память: 0.47 MB
Время: 0.03 c
15-1173821076
mike888777666
2007-03-14 00:24
2007.04.08
декомпиляция


2-1174379186
zdm
2007-03-20 11:26
2007.04.08
Пути не исповедимы


2-1173889736
Kolan
2007-03-14 19:28
2007.04.08
XMLDocument преврашает знаки тега <> в &amp;laquo;&amp; lt;&amp;raquo;


15-1173627016
Petr V.Abramov
2007-03-11 18:30
2007.04.08
PL/SQL Developer и Oracle 10.2.0.2


15-1173865249
kyn66
2007-03-14 12:40
2007.04.08
Куда пропал Delphi Chat?