Thema: Delphi Performance Frage

Einzelnen Beitrag anzeigen

Benutzerbild von DGL-luke
DGL-luke

Registriert seit: 1. Apr 2005
Ort: Bad Tölz
4.149 Beiträge
 
Delphi 2006 Professional
 
#8

Re: Performance Frage

  Alt 22. Mai 2007, 17:13
...das heißt: Du kannst auch mit lokalen Konstanten arbeiten.

Aber das ist nicht schön. Nicht machen!

Trotzdem ein Beispiel:

Delphi-Quellcode:
procedure DoSomething;
const
  storage: Integer = 0;
var
  bmp: TBitmap;
  ptr: Pointer;
begin
  bmp := TBitmap(TObject(storage));
  if bmp = nil then bmp := TBitmap.Create;

  //...
  //...

  ptr := @storage;
  Integer(storage^) := Integer(Pointer(bmp));
end;
Die Adresse des alloziierten Bitmaps ist dann immer in "storage" gespeichert und läuft dir nie aus dem scope.

Aber machs nicht, wenn dus nicht unbedingt brauchst! Für deinen Zweck fallen mir mindestens 2 schönere Lösungen ein.
Lukas Erlacher
Suche Grafiktablett. Spenden/Gebrauchtangebote willkommen.
Gotteskrieger gesucht!
For it is the chief characteristic of the religion of science that it works. - Isaac Asimov, Foundation I, Buch 1
  Mit Zitat antworten Zitat