Einzelnen Beitrag anzeigen

Benutzerbild von Jasocul
Jasocul

Registriert seit: 22. Sep 2004
Ort: Delmenhorst
1.338 Beiträge
 
Delphi 11 Alexandria
 
#37

AW: Variable ist plötzlich anders

  Alt 7. Jun 2017, 09:54
[QUOTE=SneakyBagels;1373658]
Zitat:
Zitat:
Mit der Angabe von Const kann der Parameter auch innerhalb der Procedure/Function nicht verändert werden. Außerdem kann der Compiler besser optimieren.
Optimiert der Compiler noch immer so gut, wenn man im Prozedurkopf const verwendet und innerhalb der Prozedur eine neue string-Variable, die man ändern kann?
Natürlich. Die Optimierung bezieht sich ja nur auf den Parameter.
Ob das allerdings dann noch was bringt, ist eine andere Frage. Schließlich hast du eine (lokale) Deklaration und eine Zuweisung mehr.

Ich kann doch gar nicht in Cells.[1, Grid.RowCount] schreiben ... es müsste eigentlich doch Cells.[1, Grid.RowCount -1] heißen, oder ? Aber warum wird dann keine Exception ausgelöst ??
An des Phänomen kann ich mich erinnern. Das geht tatsächlich ohne Exception!
Habe gerade mal eine Mini-Test-Anwendung gebastelt. Es war völlig unproblematisch "außerhalb" des StringGrids Einträge zu machen. Werden natürlich nicht angezeigt.
Das habe ich nie überprüft. Mir ist damals nur aufgefallen, dass ich RowCount einfach hochsetzen konnte und dann die Daten sichtbar wurden. Das habe ich gerade auch noch mal in meiner Test-Anwendung gemacht und einfach und die 9999te Zeile was eingetragen und 10000 Zeilen hinzugefügt. Die Daten waren dann sichtbar.
Mir fehlt aber die Zeit, um jetzt genau zu prüfen, was das TStringGrid macht. Das Ganze kann auch Zufall sein, da ich zwischen diesen Vorgängen keinen neuen Speicher für andere Dinge "verbrauche".
Peter
  Mit Zitat antworten Zitat