比如:
首先,
 Type TA=class
 public
 x:integer;end;
var y:TA;
//////////
然后,
y:=TA.create();
y.x:=5;
y.free;
y:=nil;
我是想把y保存在硬盘上,在程序重新启动后,仍能从取得y.x的值。
==============================================
因为我的一个类里面有保存了一个比较费时的计算的结果集,又有一些方法用到这些结果,所以才想保存这个实例化的类。

解决方案 »

  1.   

    最好用数据库,保存到数据库中。
    如果要保存的东西比较简单(比如只是保存一些整型或字符串型值),用Ini文件保存也可。
      

  2.   

    可以用TiniFile把每个属性保存起来
      

  3.   

    供参考:
    TPersistentClass = class(TObject)
    public
      procedure PersisterData;virtual;
      procedure EnrichData;virtual;
    e;TA = class(TPersistentClass)
    public
      procedure PersisterData;override;
      procedure EnrichData;override;
    eprocedure TA.PersisterData;
    b
      保存特征值;//如果运行时实例唯一,不需要;
      保存需要保存的成员值;//格式: 成员名:成员值 可以参照注册表,也建议保存到注册表
      保存当前时间;
    e procedure TA.EnrichData;

      if DataExist then
         GetData;
    e 事实上,方法和一般的实体类数据库存取是一样的,由于你保存的是中间值,所以建议保存到注册表。
      

  4.   

    用TStream的 ReadComponent, WriteComponent
      

  5.   

    利用Delphi自己的流机制,可以把一个元件直接存到流里面去,然后怎么做,就看自己的
    需求啦
      

  6.   

    如果你想保存类所在的内存块显然会遇到许多难题:指针所指的地址怎么办?VMT 又怎样办?
    你想办法将你计算的结果集写入到 TStream 中,一旦写入,你就几乎大功告成了,因为 Delphi 提供了许多流的方法,很有用。
    good luck.