Oft steht man vor dem Problem, dass man eine Klasse nutzen möchte die noch nicht deklariert wurde, bzw. man in zwei verschiedenen Klassen Objekte der jeweils anderen Klasse anlegen möchte. Das Problem kann wie folgt gelöst werden:
class A
{
my_b=new B;
};
class B
{
my_b=new A;
};
Im obigen Beispiel wird also in der Klasse A ein Objekt der Klasse B
angelegt. Die ist aber noch gar nicht deklariert. Und auch in der Klasse B wird
wiederum ein Objekt der Klasse A angelegt. Ein Vertauschen der Deklarationen
würde also am Problem nichts ändern.
Lösung:
class B;
class A
{
my_b=new B;
};
class B
{
my_b=new A;
};
Durch die hinzugefügte Zeile, teilen wir dem Compiler erstmal mit, dass es eine Klasse B gibt. Damit ist dieser erstmal zufrieden, den die Deklaration kommt ja etwas später.