Announcement

Collapse
No announcement yet.

Objekt instantiiert oder nicht ??

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Objekt instantiiert oder nicht ??

    Hallo!

    Ich habe so in etwa folgenden Code:
    <PRE>
    bmp1 := TBitmap.Create;
    bmp1.assign(bmp2);
    </PRE>
    Dabei weiß ich im voraus nicht, ob bmp2 instantiiert ist, oder, wenn ja, wieder freigegeben wurde.<BR>
    Ich wüsste gerne, wie ich das vorher abfragen könnte, da ich sonst eine nette Access Violation kriege.<BR> Hinweis: bmp2 gegen nil zu testen nützt hier natürlich nichts! <BR>
    Achso, und eine neue Klasse von TBitmap ableiten, die mir so einen Test ja einfach ermöglichen würde, hatte ich auch nicht vor!<BR><BR>
    Vielen Dank und Gruß, Jens

  • #2
    Benutze FreeAndNil(bmp2) statt bmp2.Free. Letztlich ist jedes Objekt nur ein Zeiger. Der einzig sichere Weg sit den oder die Zeiger auf die Objektdaten auf nil zu setzen. Im obigen code kannst du dann mit Assigned(bmp2) testen

    Comment


    • #3
      du kannst vorher Fragen:

      if not (bmp2=nil) then bmp1...

      grüße Min

      Comment

      Working...
      X