Thema: Delphi untypisierter pointer

Einzelnen Beitrag anzeigen

Benutzerbild von fiasko
fiasko

Registriert seit: 10. Dez 2002
Ort: Dresden
506 Beiträge
 
#3

Re: untypisierter pointer

  Alt 4. Dez 2004, 16:13
Hallo,

Zitat von Jan:
Und 2.: gibt es eine Möglichkeit über den Zeiger auf das TStringlist Objekt irgendwie eine referenz auf den Array of Tstringlist zu bekommen, welcher das TStringlist Objekt beherbergt?

Delphi-Quellcode:
type
  TMyFunnyArrayType = array of TStringList;
  PMyFunnyArrayPointer = ^TMyFunnyArrayType;

//...

     PMyFunnyArrayPointer(lv.items[1].data)^
// <------------------------------------->
// Das ist jetzt vom Typ array of TStringList
Es kommt jetzt darauf an wie du das Objekt in das data geschrieben hast. Wenn dort ein Zeiger auf ein TStringList steht klappt das wie oben, wenn du einfach das Objekt umgecastet und reingeschrieben hast müßte folgendes gehen:


Delphi-Quellcode:
     TMyFunnyArrayType(lv.items[1].data)
// <------------------------------------->
// Das ist jetzt vom Typ array of TStringList
Für einfach native Typen (die nur aus einem Schlüsselwort bestehen) kann man sich diese indirektionsstufe mit zusätzlichen Typen auch sparen.
Thomas Liske
Posts comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
  Mit Zitat antworten Zitat