Hi MAX,
da sind ein paar Fehler in deinem Code gewesen. :O
Ich habe es mal so aufgeschrieben und es funktioniert.
#include <iostream>
class Demo
{
private:
Demo *p1, *p2;
public:
Demo() {p1 = p2 = NULL;}
Demo *getP1() {return p1;}
void setP1(Demo &p1) { p1=p1;}
Demo *getP2() {return p2;}
void setP2(Demo &p2) { p2=p2;}
};
int main()
{
Demo a, b;
a.setP1(b);
(a.getP1())->setP1(a);
return 0;
}
Mit Pointern kenne ich mich leider nicht (mehr) so gut aus. Deshalb kann ich jetzt nicht erklären, wie das genau zusammenhängt.
Meine Variante halte ich aber für vernünftig.
So, jetzt geh ich erst mal in die Mensa.