软件注册站
热情软件屋

 
为什么编译file of TData总是出错
编号: QA003728    
建立日期: 2001年1月2日 最后修改日期: 2004年9月7日
所属类别: Delphi - 磁盘、文件和目录
   
    操作系统: windows98
    编程工具: Delphi 5
    问题: 以下的数据定义在Delphi5下编译总通不过(在Delphi1下可以)不知为什么? 请高手指教。
    PTData = ^TData;
     TData = record
     FSize: Byte;
     FName: TFontName; { 字种类 }
     FStyle: TFontStyles;{ 字属性 }
     Text: String;
     Next: PTData;
     end;
    TalkDataFile: file of TData;
    水平: 刚入门(wbd)
   
    编译你的这段代码时,会报告错误Type 'TData' needs finalization - not allowed in file type。
    主要的原因是你的结构中包括String。在Delphi中,String是可变长度的字符串,这样在进行文件操作时,Delphi无法知道TData结构到底有多少个字节组成。所以你需要改变定义,如:
    Text: array [1..25] of Char;
    或者
    Text: String[50]
    这里Text的长度根据实际需要设置。
    类似的,TFontName也需要进行修改。不过TFontStyles不需要修改,因为它实际是一个整数。

    

此问题由李海、ljjsoft回答。

附加关键字:编程, 源程序, programming, source code, Delphi, VCL, Borland, 磁盘、文件和目录, disk, file, fat, directory, folder

   
 
把这个问题推荐给朋友
   
 
   
您的意见类别
您的名字
您的电子邮件
您的建议(请尽可能详细)
 
 

版权所有 1997-2008 热情软件屋
如果您有任何建议和意见, 请给我发个电子邮件 askpro@china-askpro.com
Web Designed by ZebraStudio