国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Delphi > 正文

對Delphi接口的又一疑惑:怎么會自動釋構的?

2019-11-18 18:04:58
字體:
來源:轉載
供稿:網友
 

太莫名其妙了,近來被Delphi的接口氣死了,請看以下代碼(注意黑體及紅色):

type
  IInterface1 = interface
  end;


  TClass1 = class(TInterfacedObject, IInterface1)
    destructor destroy; override;
  end;

  TForm1 = class(TForm)
    Button1: TButton;
    PRocedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
    class1: IInterface1;     //注意這里是接口IInterface1 ,不是類TClass1 ,TClass1 是沒有這個問題出現的
  public
    { Public declarations }
  end;

implementation
{$R *.dfm}

{ TClass1 }
destructor TClass1.destroy;
begin
  ShowMessage('Destroy!');
  inherited;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  class1 := TClass1.Create;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  class1 := nil;  //就是這里,他會自動跳到destroy那里釋構。
                         //如果class1是類TClass1,則不會跳到destroy那里去。
                         //為什么?為什么?
end;


上一篇:比較VC和Delphi的WinTest工程

下一篇:delphi多線程程序示例(與.net一樣簡單)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
學習交流
熱門圖片

新聞熱點

疑難解答

圖片精選

網友關注

主站蜘蛛池模板: 阿合奇县| 同仁县| 钦州市| 六盘水市| 义马市| 边坝县| 江西省| 荆州市| 科尔| 如皋市| 牙克石市| 囊谦县| 新营市| 凤山市| 潮安县| 宜君县| 佳木斯市| 资阳市| 河南省| 福州市| 白城市| 白沙| 阳江市| 金秀| 德清县| 乳源| 禄劝| 甘孜| 额尔古纳市| 河曲县| 磐石市| 卢龙县| 乌拉特后旗| 宁武县| 宁明县| 垫江县| 灵寿县| 永年县| 滦平县| 政和县| 德化县|