Mit Nullbasierten Listen habe ich kein Problem. @Sir Rufo erlärt das gut mit dem Geburtsproblem.
Wenn ich auf dem Bildschirm die X;Y Position adressieren will, mache ich das oft mit:
Line := Abslute_Position div XResolution;
Column := Abslute_Position mod XResolution;
Das klappt aber nur, wenn das erste Pixel des Bildschirmes an Position NULL liegt.
Jemans schrieb, das ein Byte 256 Werte annehmen kann, was nur geht, wenn die NULL berücksichtigt wird.
Zitat von
Luckie:
Ich war glücklich, wenn sie das "Haus des Nikolaus" gezeichnet hat.
Das ist die kindgerechte Form des Salaesman Problems. Jeder Weg soll öglichst nur einmal gegangen werden.
Ich wüchsche mir vielmehr einen Compiler, der die Initialisierung und Freigabe der verwendeten Objekte automatisiert. Ich habe sehr oft EAccessViolations. Weil wohl irgendein Objekt nicht korrekt erzeigt worden ist. Dann geht die frustrierende Fehlersuche los.
Die Prozessoeren werden immer leistungsfähiger, da könnte doch der Compiler Konstruktorcode und Destruktorcode automatisch einfügen.
Für Abwärtskompatibilität könnte der im Quellcode formulierte Konstruktor und Destruktor noch zugelassen werden, fehlt das jedoch in der Klassendefinition muss der Compiler den passenden Code dafür erzeugen.
Damit der Topf nicht explodiert, lässt man es ab und zu mal zischen.