您现在的位置:首页 >> 基础算法 >> window基础 >> 内容

Delphi中扩展对象在运行时的数据

时间:2011/9/3 15:30:49 点击:

  核心提示:包含以下3个函数:procedure ExtendObject(const AObject, AExtension: TObject);function GetObjectExtension(cons...

包含以下3个函数:

procedure ExtendObject(const AObject, AExtension: TObject);
function GetObjectExtension(const AObject: TObject): TObject;
function RemoveObjectExtension(const AObject: TObject): TObject;

调用示例代码:

uses
  SysUtils,
  ObjectExtensions_Intrusive;
type
  TStrExtenstion = class
  end;
  TIntExtension = class
  end;
procedure DoStuff(const A: TObject);
var
  Extension: TObject;
begin
  if A = nil then
    Exit;
  Extension := GetObjectExtension(A);
  if Extension = nil then
    Exit;
  WriteLn(Extension.ClassName);
end;

var
  a, b, c: TObject;
begin
  a := TObject.Create;
  b := TObject.Create;
  c := TObject.Create;
  ExtendObject(a, TStrExtenstion.Create);
  ExtendObject(b, TIntExtension.Create);
  DoStuff(a);
  DoStuff(b);
  DoStuff(c);
  ReadLn;
end.



迅雷专用高速下载

作者:网络 来源:转载
共有评论 0相关评论
发表我的评论
  • 大名:
  • 内容:
  • 盒子文章(www.2ccc.com) © 2019 版权所有 All Rights Reserved.
  • 沪ICP备05001939号