ucontroller.pas

来自「多数代码可以直接在Delphi6和Delphi7环境下运行。部分涉及.NET技术」· PAS 代码 · 共 51 行

PAS
51
字号
unit uController;

interface

uses
  Sysutils, uAggregatedObj, uContainedObject;

type
  IController = interface
    ['{9238BE74-948B-4CAC-A14C-EA19DD8811E8}']
    function GetName(var sName: WideString): HResult; stdcall;
  end;

  TController = class(TInterfacedObject, IController, IAggInterface, IContainedInterface)
  private
    FAggObj : IAggInterface;
    FContained : IContainedInterface;
  public
    Constructor Create;
    DesTructor Destroy; override;
    function GetName(var sName: WideString): HResult; stdcall;

    property AggObj : IAggInterface read FAggObj implements IAggInterface;
    property cnObj : IContainedInterface read FContained implements IContainedInterface;
  end;

implementation

{ TController }

constructor TController.Create;
begin
  FAggObj := TAggregatedObj.Create(Self);
  FContained := TCnObject.Create(Self);
end;

destructor TController.Destroy;
begin
  FAggObj := nil;
  FContained := nil;
  inherited;
end;

function TController.GetName(var sName: WideString): HResult;
begin
  sName := 'I am the Controller!';
  Result := S_OK;
end;

end.

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?