2013-05-26 10 views
8

Ist es sicher, einen temporären std :: shared_ptr zu dereferenzieren?Ist es sicher, einen temporären std :: shared_ptr zu dereferenzieren?

Beispiel:

std::shared_ptr<std::string> create_shared_string() 
{ 
    return std::shared_ptr<std::string>(new std::string("hello")); 
} 

std::cout << *create_shared_str() << std::endl; 

Meine Befürchtung ist, dass die Shared_ptr zerstört und der Referenzzähler geht so schnell auf Null als die dereferenzieren abgeschlossen ist und somit der zurück Rohzeiger ist nicht mehr sicher. sicher

+0

Fügen Sie es als Antwort vielleicht hinzu? ;) – monoceres

Antwort

Verwandte Themen