定义一个类:
type
  TAA=class
  public
    Function ABC():Boolean;
  private
    FA:Integer;
    procedure SetA(Value:Integer);
  published
    property A:Integer read FA write SetA;
  end;问题1:
我在
Function TAA.ABC():Boolean;
中对FA赋值,和对A赋值有什么区别???
问题2:

procedure SetA(Value:Integer);
中对FA赋值,和对A赋值有什么区别???

解决方案 »

  1.   

    如果在同1个单元里面 没什么区别, 如果你要在别的单元中给FA赋值的话,那就只能通过对A赋值,这个时候FA的值也就相应变了,这个是delphi  OO的一种机制。   提供一种安全访问私有变量的方法
      

  2.   

    如果 你对FA赋值,是不会触发SetA的,对A赋值时会触发的
      

  3.   

    如果你SetA执行的是FA:=Value的话就没任何区别,但是如果SetA里面还有其它代码的话,那有什么区别应该不用说了吧