¿Qué pasa con la llamada shared_from_this para apilar objetos asignados? enable_shared_from_this en la lista de las clases base es un indicador para el usuario de la clase derivada para crearlo solo en el montón (y solo esperamos el uso correcto de la clase) o podemos tener una protección más fuerte contra tales errores. O no entiendo algunos momentos? código
Ejemplo: enable_shared_from_this y objetos en la pila
class C : public enable_shared_from_this<C> { public: shared_ptr<C> method() { shared_from_this(); } };
void func() { C c; shared_ptr<C> ptr = c.method(); // exception comming from shared_from_this() }
¿Qué estás preguntando exactamente? ¿Desea saber si hay una forma de evitar llamar a 'shared_from_this()' en objetos asignados a la pila? –