So ganz so astrein ist das Beispiel aber auch nicht, hm?
Delphi-Quellcode:
class function TSingleton.NewInstance: TObject;
begin
if ( not Assigned( Instance ) ) then
begin
Instance := inherited NewInstance;
// Initialize private variables here, like this:
// TSingleton(Result).Variable := Value; <--------------------------
end;
Result := Instance
Inc( Ref_Count );
end;
Wird interessant result zu casten und etwas zuzuweisen, wenn erst darunter Result:=Instance; gesetzt wird.
Edit: Schon klar, dass da TSingelton(Instance) stehen sollte, tut et abba nich.
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)