Doble herencia de enable_shared_from_this

Tengo un objeto (Z) que deriva de otros dos objetos (A y B).

A y B se derivan deenable_shared_from_this<>respectivamenteenable_shared_from_this<A> yenable_shared_from_this<B>.

Claro que llamoshared_from_this() en Z. Y, por supuesto, el compilador informa que esto es ambiguo.

Mis preguntas son:

¿Es seguro heredar dos veces deenable_shared_from_this<> o creará dos recuentos de referencias separadas (¡mal!)Si no es seguro, ¿cómo resuelvo esto?

Nota: he encontrado esta otra preguntamal puntero débil cuando la base y la clase derivada heredan de boost :: enable_shared_from_this pero en realidad no responde. ¿Debo usar elvirtual truco tambien

Respuestas a la pregunta(2)

Su respuesta a la pregunta