Preguntas con la etiqueta [shared-ptr]

Lista shared-ptr preguntas

¿ Puedes señalar std::shared_ptruna matriz? Por ejemplo, std::shared_ptr<int> sp(new int[10]); Si no, ¿por qué no? Una razón que ya conozco es que no se puede incrementar/disminuir el archivo std::shared_ptr. Por

¿Por qué debería std::move un std::shared_ptr?

8
respuestas
221
votos
103.5k
vistas

Estuve revisando el código fuente de Clang y encontré este fragmento: void CompilerInstance::setInvocation( std::shared_ptr<CompilerInvocation> Value) { Invocation = std::move(Value); } ¿Por qué querría std::moveun std::shared_ptr? ¿Tiene algún sentido transferir la

¿Cuándo es útil std::weak_ptr?

15
respuestas
369
votos
211.3k
vistas

Comencé a estudiar punteros inteligentes de C++ 11 y no veo ningún uso útil std::weak_ptr. ¿Alguien puede decirme cuándo std::weak_ptres útil/necesario?

Tengo este código que no funciona, pero creo que la intención es clara: pruebamakeshared.cpp #include <memory> class A { public: static ::std::shared_ptr<A> create() { return ::std::make_shared<A>(); } protected: A() {}

¿Cuándo utilizar destructores virtuales?

21
respuestas
1.9k
votos
913.3k
vistas

Tengo un conocimiento sólido de la mayoría de OOPlas teorías, pero lo que me confunde mucho son los destructores virtuales. Pensé que siempre se llama al destructor sin importar qué