两个问题请教了:
1、一个Class中的Feild是一个对象,如何获得从外部获得的副本,或者这样的行为就是非法的。
   比如:
      Ta = class
      private
         b : TStrings;
      public
      ....
     
      外部程序如何获得b的副本,还是就是不允许的。2、有这样的警告是什么原因导致的,不知道是不是因为继承了TObject,但是destroy函数override的不符合要求。
   Method 'Destroy' hides virtual method of base type 'TObject'

解决方案 »

  1.   

    >>外部程序如何获得b的副本,还是就是不允许的。與 Ta 在同一個 .pas 中就可以得到
    >>Method 'Destroy' hides virtual method of base type 'TObject'.destructor Destroy override;要加個 override;
      

  2.   

    第一个问题可以举个简单的例子吗
    比如
    Ta = class
    private
      b : TString;
    public
     ...Tb =Class
    private
      a : String;
    public
      procedure copyb;
    implementation
      procedure copyb;
      var
        i: integer;
      begin
        a := b.string[i]; // b可以不用定义,直接使用吗??
      end;
    同样一个问题,就是如果
    a, b: TStrings;a, b之间可以互相拷贝吗
    比如 a := b;
    在C++中,有copy constructor,delphi中如何应付这样的问题。
    如果我的概念有什么不对的地方,请赐教!谢谢!