

C++ (pointry na objekty)
Zdravím,
právě se snažím vymyslet jednu aplikačku, ale nějak se mi nedaří posílat ukazatele.
V mainu si vytvořím Objekt Tree
------------------------------------------
Node n = Node(Game(5,Coord(3,2)));
Tree tree = Tree(n);
n.a = 100; // tato hodnota je tam jen kvůli testu a ověření, že ukazatel funguje správně
tree.getRoot()->print();
// Tento příkaz by měl vypsat něco ve smyslu: "Hodnota a je 100" vypisuje "Hodnota a je <<nějaké hausnumero>>"
------------------------------------------
Popis objektů:
V tree si vezmu jeho pointer a uložím do Node *root
------------------------------------------
Tree::Tree(Node root)
{
this->root = &root;
}
------------------------------------------
Konstruktor v Node a metoda print vypadá tak nějak
------------------------------------------
Node::Node(Game game)
{
this->game = &game;
}
void Node::print(void)
{
printf("Hodnota a je %d",a);
}
--------------------------------------------
Můžete mi prosím poradit, kde dělám chybu?
Díky
Petr
Vyřešeno.
je potřeba psát pointry naopak (v konstruktoru předávat pouze pointer nikoli celý objekt).
ano. :)
kedykolvek predas objekt (ne pointer) tak je skopirovany do stacku t.j. neni to povodny objekt a ani pointer na neho neni pointer na povodny objekt.