ich habe jetzt schon etwas gesucht aber nichts gefunden, was meine Fragen so richtig beantwortet.
Code: Alles auswählen
class A
{
public:
A(B &b) { b.registerMe(*this); }
};
class B
{
public:
void registerMe(A &a) { /* hier wird *beliebiges* mit dem Objekt a gemacht, also zB Aufruf virtueller Funktionen. */ }
};
Und vor allem: Wie lässt sich das Problem vermeiden? Brauch ich eine Extra-Methode, die irgendwann nach dem Constructor aufgerufen wird?
Code: Alles auswählen
class A
{
private:
B m_b;
public:
A() : m_b(*this) : { }
};
class B
{
public:
B(A &a) { /* hier wird *beliebiges* mit dem Objekt a gemacht, also zB Aufruf virtueller Funktionen. */ }
};
Mir ist aber aufgefallen, dass ich in meinem Code öfter this in Contructors benutzt habe und bisher bin ich von Problemen verschont geblieben.