Einzelnen Beitrag anzeigen

Benutzerbild von Jan
Jan

Registriert seit: 24. Sep 2002
Ort: Magdeburg
491 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: verliere Zeiger bei setlength(array,length(array)+1)

  Alt 7. Dez 2004, 14:53
Zitat von jim_raynor:
Sollte eigentlich nicht sein. Beim vergrößern eines Arrays wird immer ein neuer Speicherbereich angefordert, der alte übertragen und anschliessend der alte gelöscht. .
Das weiß ich das das nicht sein sollte, komischerweise ist es aber so, dass wirklich nur der Zeiger auf den letzten Eintrag des arrays verloren geht.

Zitat von jim_raynor:
P.S: ((pstringlist(form1.listview1.Items[form1.ListView1.Items.Count-1].Data))^ pStringList und die anschliessende derefenzierung ^ ist überflüssig. TStringList ist bereits ein pointer.

Tstringlist(form1.listview1.Items[form1.ListView1.Items.Count-1].Data) müsste also reichen.
Sollte eigentlich, dachte ich auch, aber tuts nicht. Gibt ne exception zur runtime.

Danke dass du dich damit befasst!
Gruß
Jan
Jan
Wenn die Sonne der Kultur tief steht, werfen auch kleine Gestalten lange Schatten.
  Mit Zitat antworten Zitat