Resultados de la búsqueda a petición "shared-ptr"
std :: inicialización shared_ptr: make_shared <Foo> () vs shared_ptr <T> (nuevo Foo) [duplicado]
Esta pregunta ya tiene una respuesta aquí: Diferencia en make_shared y normal shared_ptr en C ++ [/questions/20895648/difference-in-make-shared-and-normal-shared-ptr-in-c] 7 respuestasCuál es la diferencia entre std::shared_ptr<int> p = ...
preguntas sobre shared_from_this
Tengo una función que toma unshared_ptr<MyClass>. En alguna función miembromemfun deMyClass, Necesito pasarthis a esa función. Pero si escribo void MyClass:memfun() { func(shared_ptr<MyClass>(this)) } Supongo que después de que la llamada haya ...
Propiedad con una representación física
Después de leer en RAII, ver Presentación de CppCon2014 de Herb Sutter [https://www.youtube.com/watch?v=xnqTKD8uD64], y leyendo elcore Guidelines [http://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#Rr-sharedptrparam-const] ...
boost shared_ptr: diferencia entre operator = y reset?
¿Hay alguna diferencia entre las dos piezas de código a continuación? ¿Alguno de ellos es preferible al otro? operador = boost::shared_ptr<Blah> foo; // foo.ptr should be NULL foo = boost::shared_ptr<Blah>(new Blah()); // Involves creation ...
C ++ pasando una clase derivada shared_ptr a una función con plantilla
Primero algo que debería funcionar, luego algo que no funciona. ¿Por qué no es la pregunta? Declaro dos clases: class Base { ... }; class Derived : public Base { ... };ntonces tengo la siguiente función en otro lugar: void ...
C ++: "... no es un tipo polimórfico" mientras se usa boost :: dynamic_pointer_cast
¿Por qué recibo el siguiente error para el siguiente código? 1>C:\Libs\boost_1_44\boost/smart_ptr/shared_ptr.hpp(259): error C2683: 'dynamic_cast' : 'my_namespace::A' is not a polymorphic type 1> D:\[location]\[header_filename].h(35) : see ...
Why do std :: shared_ptr <void> work
Encontré algo de código usando std :: shared_ptr para realizar una limpieza arbitraria al cerrar. Al principio pensé que este código no podría funcionar, pero luego intenté lo siguiente: #include <memory> #include <iostream> #include <vector> ...
C ++ / CLI Ajustar una función que devuelve un std :: shared_ptr
Actualmente estoy envolviendo una clase de C ++ con C ++ / CLI para la interoperabilidad de .NET siguiendo el proceso estándar de mantener un puntero nativo en una clase administrada. En un caso, tengo una clase nativa que tiene una función ...
static_cast con boost :: shared_ptr?
¿Cuál es el equivalente de unastatic_cast conboost::shared_ptr? n otras palabras, ¿cómo debo reescribir la siguiente Base* b = new Derived(); Derived* d = static_cast<Derived*>(b);cuando usasshared_ptr? boost::shared_ptr<Base> b(new ...
Downcasting puntero compartido a clase derivada con funcionalidad adicional: ¿es esto seguro?
Considere el siguiente esquema: class Base { /* ... */ }; class Derived : public Base { public: void AdditionalFunctionality(int i){ /* ... */ } }; typedef std::shared_ptr<Base> pBase; typedef std::shared_ptr<Derived> pDerived; int main(void) ...