Ich war Wandern - kann ich std::shared_ptr
als Map-Schlüssel verwenden?Verwenden von Std Shared_ptr als Std :: Map Key
genauer gesagt - der Referenzzähler des Zeigers könnte sich von dem Wert unterscheiden, den er hatte, als er der Karte zugewiesen wurde.
Wird es in der Karte korrekt identifiziert?
Beachten Sie, dass wenn Sie das "Aliasing-Konstruktor" von 'std :: shared_ptr' verwenden, je nach Anwendungsfall verwenden Sie betrachten wünschen können [' std :: owner_less' ] (http://en.cppreference.com/w/cpp/memory/owner_less) als Vergleichsfunktor der Karte. Dadurch erhalten Sie die Reihenfolge basierend auf dem Zeiger auf das gesamte Objekt und nicht auf das Unterobjekt, auf das direkt mit dem 'shared_ptr' verwiesen wird. – tomjakubowski