Podwójne dziedziczenie enable_shared_from_this

Mam obiekt (Z), który pochodzi od dwóch innych obiektów (A i B).

Oba A i B pochodzą zenable_shared_from_this<>, odpowiednioenable_shared_from_this<A> ienable_shared_from_this<B>.

Oczywiście, że dzwonięshared_from_this() na Z. Oczywiście kompilator zgłasza to jako niejednoznaczne.

Moje pytania to:

czy można bezpiecznie dziedziczyć dwa razyenable_shared_from_this<> lub czy utworzy dwie oddzielne liczby referencyjne (złe!)Jeśli nie jest bezpieczny, jak rozwiązać ten problem?

Uwaga: znalazłem to inne pytaniezły słaby wskaźnik, gdy klasa bazowa i pochodna dziedziczą po boost :: enable_shared_from_this ale tak naprawdę nie odpowiada. Czy powinienem użyćvirtual sztuczka też?

questionAnswers(2)

yourAnswerToTheQuestion