Registriert seit: 26. Mai 2004
3.159 Beiträge
|
AW: Globale Variable - Definition
14. Mai 2011, 22:29
Ich hab das immer so
Delphi-Quellcode:
TSingletonClass = class(TObject)
private
class var FInstance;
class procedure Init();
class procedure Finalize();
constructor Create(); reintroduce;
public
class function GetInstance(): TSingletonClass;
destructor Destroy();
end;
function ShortcutName(): TSingletonClass;
implementation
class procedure TSingletonClass.Init();
begin
{ ... }
end;
class procedure TSingletonClass.Finalize();
begin
{ ... }
end;
class function TSingletonClass.GetInstance(): TSingletonClass;
begin
if (not Assigned(TSingletonClass.FInstance)) then
TSingletonClass.FInstance := TSingletonClass.Create();
Resul := TSingletonClass.FInstance;
end;
function ShortcutName(): TSingletonClass;
begin
Result := TSingletonClass.GetInstance();
end;
initialization
TSingletonClass.Init();
finalization
TSingletonClass.Finalize();
Bitte aber die ShortcutName()-Methode umbenennen
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
|