Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Pointer und "^" (https://www.delphipraxis.net/150218-pointer-und-%5E.html)

omata 10. Apr 2010 15:44

Re: Pointer und "^"
 
Meine Güte habt ihr Probleme, das ist ja wieder mal nicht auszuhalten :wall:

Wenn man den Inhalt eines Zeigers haben möchte, dann referenziert man diesen und sonst nicht. Nur weil der Delphicompiler hier so blind ist (und Lazarus in diesem Punkt wirklich konsequenter ist) kann man doch trotzdem so programmieren, dass man sieht, was man da eigentlich macht. Einige wollen das nicht verstehen: ok, dann eben nicht. Aber trotzdem ist das ein Unterschied, das ist genauso wie der Internet Explorer, der versucht HTML-Fehler zu interpretieren, ein absoluter Grauß für die Web-Entwicklung.

Nichts anderes ist das hier, damit befasst man sich einmal, versteht es und macht es dann richtig. Wo ist das Problem?

Daniela.S 10. Apr 2010 16:04

Re: Pointer und "^"
 
Hoppla, was habe ich denn da losgetreten? Scheint was religiöses an sich zu haben *ggg*

Ich weiss jetzt zwar nicht ob ich das noch aus TurboPascal Zeiten gewohnt bin, aber die Lesbarkeit ist für mich sehr wichtig. Vor allem wenn ich einige Monate nicht an einem Projekt gearbeitet habe.

Pointer verwende ich schon recht oft und da ist für mich die Lesbarkeit und Unterscheidung der Objekte sehr wichtig.

Dass man schneller programmiert wenn man das Zeichen weglässt halte ich für, entschuldigt den Ausdruck, lächerlich. Das Wichtigste ist den Code so zu schreiben, dass man ihn auch noch Wochen, Monate oder Jahre nachher lesen kann. Ansonsten fängt dann eine ewig lange Suche an. Die zwei Sekunden die man vorher gespart hat sind dann schnell weg.

samso 10. Apr 2010 17:21

Re: Pointer und "^"
 
...und manchmal geht es ja auch nicht anders.
Delphi-Quellcode:
with PointerToMyRecord^ do
  Irgendwas := 0;
Da wäre es schon merkwürdig an anderer Stelle dann
Delphi-Quellcode:
PointerToMyRecord.Irgendwas := 0;
zu schreiben, oder? Mein Votum: Nicht abgewöhnen.



Zitat:

kann man doch trotzdem so programmieren, dass man sieht, was man da eigentlich macht.
Na ja, geht so.. Die Hilfe schreibt zwar zu "Klassen und Objekte"
Zitat:

Eine Klassentypvariable ist eigentlich ein Zeiger auf ein Objekt. ... Sie brauchen in diesem Fall nicht MeinObjekt^.Size := 100 anzugeben
Aber tatsächlich kann ich das nicht schreiben, selbst wenn ich wollte.

Medium 10. Apr 2010 17:46

Re: Pointer und "^"
 
Weil es bei Objekten auch semantisch falsch wäre. Das ist schon i.O. so.

Aus dem gleichen Grund muss man bei C# zum Beispiel immer Parameter mit dem Schlüsselwort "ref" definieren und übergeben, wenn eine Objektreferenz gewollt ist. Das ist herrlich konsequent an der Stelle.

himitsu 11. Apr 2010 08:29

Re: Pointer und "^"
 
Zitat:

Zitat von mleyen
(Der Compiler bemerkt ja auch die richtigen Stellen)

Wenn man einen "funktionierenden" Parser besitzt, dann wäre sowas schon möglich.

Hier wäre es aber mal praktisch, wenn die nächste Generation des Delphi-Parsers frei zugänglich wäre und dieser nicht nur Compilerintern versteckt wäre.
Dann könnte man auch endlich mal das ErrorInsite :stupid: "reparieren".


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:48 Uhr.
Seite 3 von 3     123   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz