Qu'en est-il de l'appel de shared_from_this pour les objets alloués à la pile? enable_shared_from_this dans la liste des classes de base est un indicateur pour l'utilisateur de la classe dérivée pour créer c'est seulement sur le tas (et nous espérons juste pour l'utilisation correcte de classe) ou nous pouvons avoir une protection plus forte contre de telles erreurs? Ou je ne comprends pas certains moments?
code Exemple: enable_shared_from_this et les objets sur la pile
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() }
Que demandez-vous exactement? Voulez-vous savoir s'il existe un moyen d'empêcher l'appel 'shared_from_this()' sur les objets alloués à la pile? –