Forum: Object-Pascal / Delphi-Language
Delphi
by SebE,
27. Apr 2009
Ich hab mich (abgewandelt) zitiert.
Für mich die (bisher) beste Lösung:
Alle liegen in ihrem eigenen Modul.
Forum: Object-Pascal / Delphi-Language
Delphi
by SebE,
26. Apr 2009
@Panthrax:
Hui viel Text, bitte nicht denken, ich widerspreche dir...wir sind schon einer Meinung (ich weiß, wie ein Compiler funktioniert), nur ich habe deine Aussage anders aufgefasst.
Es geht um das Problem der Unmöglichkeit der Bestimmung der Größe von "zirkulären" Klassen. Nur ist das eben kein spezielles Problem von abstrakten Klassen, sondern von Allen.
Forum: Object-Pascal / Delphi-Language
Delphi
by SebE,
26. Apr 2009
ne, die Lösung steckt in einer übergeordneten (wär schön, wenn noch abstrakten) Klasse.
Ja, es sind mehrere Units im Spiel.
Forum: Object-Pascal / Delphi-Language
Delphi
by SebE,
26. Apr 2009
DAnke für die Aufklärung...ich hab mich gewundert, warum du dich so speziell auf abstrakte Klassen fest gelegt hast. Das ist doch (wie du richtig schreibst) wurst, ob Abstrakt oder nicht...
Also: Es ist doch kein Problem von Abstrakten Klassen, dass man deren Größe nicht berechnen kann (das ist ein allgemeines Problem) - das ist der Grund für meinen Einwand.
Forum: Object-Pascal / Delphi-Language
Delphi
by SebE,
26. Apr 2009
ok, wir reden hier sicher von verschiedenen Schuhen.
Erklär mir das bitte näher: in wiefern benötigt ein Compiler die Größe einer abstrakten Klasse?
Und für die "richtige" (abgeleitete) Klasse kennt er doch die abstrakte Klasse.
Forum: Object-Pascal / Delphi-Language
Delphi
by SebE,
26. Apr 2009
bei abstrakten Klassen spielt die benötigte Größe gar keine Rolle.
Forum: Object-Pascal / Delphi-Language
Delphi
by SebE,
26. Apr 2009
Hab ich schon einmal geschrieben.
Ich verfolge eine strikte Philosophie:
Erst sagen, wie etwas aussieht, bevor man es verwendet.
dieses Prinzip (wie es der Delphi-Compiler verwendet), dass man innerhalb des SELBEN Type-Konstruktes Kreuz-Deklarationen erzeugen darf, geht NOCH in Ordnung, da man dies Überschauen kann. Aber dieses Prinzip auf ganze Module angewandt, ist unübersichtlich und darf...
Forum: Object-Pascal / Delphi-Language
Delphi
by SebE,
26. Apr 2009
@stoxx:
mir persönlich gefällt diese (erlaubte) Kreuzverwendung überhaupt nicht.
...aber für die Lösung.
Man kann bei der (abstrakten) Klasse A1 (aus meinem Beispiel) davon ausgehen, dass A2 verwendet wird.
Forum: Object-Pascal / Delphi-Language
Delphi
by SebE,
26. Apr 2009
@mirage228:
NOCH nicht?
in Pascal gab's die mal, also kann man davon ausgehen, dass es sie auch in Zukunft nicht mehr geben wird (schade eigentlich).
Forum: Object-Pascal / Delphi-Language
Delphi
by SebE,
26. Apr 2009
@stoxx:
Dieses "forward"-Deklarieren ist zwar hilfreich, aber entspricht nicht dem Ansatz: Erst Deklarieren, dann nutzen.
Wie erstelle ich abstrakte Klassen (man könnte ja den Constructor virtual abstract definieren -> nicht sehr elegant)
Forum: Object-Pascal / Delphi-Language
Delphi
by SebE,
26. Apr 2009
@mirage228:
Ja, die Idee kam mir auch (ist auch vom Stil her elegant):
Hat man nur noch eine Klasse (und ein Modul) mehr :-(
Danke euch für die schnellen Antworten:
Für die Vollständigkeit:
Forum: Object-Pascal / Delphi-Language
Delphi
by SebE,
26. Apr 2009
Hallo Delphi-/Pascal-Programmierer.
Ich hab weniger ein Problem, als eine allgemeine Frage.
Wie implementiere ich zwei Objekte, die jeweils eine Beziehung zum Anderen pflegen?
Beispiel:
type
A = class