Ich versuche eine Nodeliste zu erstellen und ich habe zwei Klassen: Node & Nodelist. Der Konstruktor von Knoten sieht wie folgt aus:C++: Speichern von Klassenobjekten in einer Map (Fehler: Nehme die Adresse eines temporären Objekts vom Typ 'Node')
Node::Node(int identifier, bool weighted){
ID_ = identifier;
numberOfConnections_ = 0;
weighted_ = weighted;
}
Wenn ich versuche, eine Verbindung zwischen den Knoten mit dieser Methode hinzufügen:
void Nodelist::addOneWayConnection(int source, int target){
connections_[source] = &Node(source, weightedlist_); <-- error
connections_[target] = &Node(source, weightedlist_); <-- error
connections_[source]->addConnection(connections_[target]);
}
ich den Fehler:
error: taking the address of a temporary object of type 'Node'
Wie Ich speichere eine Referenz zur Klasse Node?
Vielen Dank im Voraus!
Wie ist 'connections_' definiert? Mehr als wahrscheinlich ist Ihre Lösung, die & loszuwerden. – NathanOliver
Std :: Karte Verbindungen_; –
Sie müssen bestimmten Platz für Ihre Quelle und Ihr Ziel angeben. –