Passender smart pointer gesucht
-
Hallo,
ich bräuchte einen smart pointer, den ich
- mit 0 initialisieren kann und
- mittels dessen ich einen boost::weak_ptr konstruieren kann (also ihn als Argument in einem Konstruktor von boost::weak_ptr verwenden kann).
Da ersteres nicht mit boost::shared_ptr geht und zweiteres nicht mit boost::scoped_ptr, würde ich es mit
boost::variant<boost::shared_ptr<...>, Empty> versuchen, wobei Emtpy eine Klasse ist, deren Instanzen das leere Objekt repräsentieren.Fällt jemanden ein besserer Weg ein?
-
Warum soll es nicht gehen,
boost::shared_ptrmit einem Nullzeiger zu konstruieren? Das ist ja das, was der Standardkonstruktor macht.
-
Da ersteres nicht mit boost::shared_ptr geht
Hab ichs falsch verstanden?
boost::shared_ptr<long> p; //oder boost::shared_ptr<long> p1((long*)0);Simon
-
Stimmt, habe ich übersehen (irgendwie macht das so auch viel mehr Sinn).