Einzelnen Beitrag anzeigen

Olli
(Gast)

n/a Beiträge
 
#43

Re: lokale Variablen mit globaler Lebensdauer?

  Alt 14. Jul 2005, 17:55
Zitat von negaH:
Beispiel: [...]
Das Beispiel sehe ich eher als Liste der Defizite in Delphi. Es erinnert mich an eine Sache, die ich im Rahmen eines Projekts zur Native API als Problem hatte. Leider kann man mit Delphi keine Objekte "auf dem Stack" anlegen, welche automatisch beim Verlassen ihres Sichtbarkeitsbereiches zerstört werden. Es gibt Workarounds mit Interfaces und - noch schlimmer - mit einem alten Schlüsselwort (war es TObject?!) welches eigentlich nur noch zur Abwärtskompatibilität existiert. Fazit: Delphi kann keine Objekte erzeugen, die sich wie Basistypen verhalten. (Mit .NET mag sich das geändert haben ...)

Ach ja, bist du sicher, daß es so geht? Ich nicht, denn Pool ist nicht global (also nichtmal innerhalb der Implementation-Sektion der Unit):
Delphi-Quellcode:
function NPool: IPool;
var
  Pool: IPool = nil;
begin
  if Pool = nil then Pool := TPool.Create;
  Result := Pool;
end;
  Mit Zitat antworten Zitat