Bir nodelist yapmaya çalışıyorum ve iki sınıfım var: Düğüm & Nodelist.C++: Sınıf nesnelerini bir haritaya depolama (hata: 'Düğüm' türünde geçici bir nesnenin adresini alma)
Node::Node(int identifier, bool weighted){
ID_ = identifier;
numberOfConnections_ = 0;
weighted_ = weighted;
}
Ben bu yöntemle düğümler arasında bir bağlantı eklemeyi deneyin:
error: taking the address of a temporary object of type 'Node'
nasıl:
void Nodelist::addOneWayConnection(int source, int target){
connections_[source] = &Node(source, weightedlist_); <-- error
connections_[target] = &Node(source, weightedlist_); <-- error
connections_[source]->addConnection(connections_[target]);
}
hatası alıyorum düğüm yapıcı şöyle Düğüm sınıfına bir referans veriyorum?
Şimdiden teşekkürler!
'connections_' nasıl tanımlanır? Muhtemelen sizin çözümünüzden kurtulmaktır. – NathanOliver
std :: harita links_; –
'Düğüm 'kaynağınız ve hedefiniz için belirli bir alan ayırmanız gerekir. –