@Saroupille: si j'ai donné le lien vers les confs de CppCon, c'est que j'ai déjà vu les vidéos. Sutter est spécialiste de la prog concurrente, je n'ai pas de doute qu'il connait très bien les problématiques liées à l'utilisation des unique_ptr dans ce contexte.
Il est difficile d'avoir un consensus sur le pointeur intelligent "par défaut" (pour autant que cela ait un sens). Les shared sont plus safe en multi thread (la durée de vie, pas l'accès concurrent…), mais plus lourds que les unique (compteur interne inutile si tu as qu'un seul responsable). De plus, on a plus tendance à ne pas définir correctement qui est propriétaire et quelle est la durée de vie des objets managés avec les shared qu'avec les unique (phénomène de "tout le monde est propriétaire", qui mène à avoir aucun vrai propriétaire)
(HS : je crois que cette idée vient du fait que l'on présente souvent les weak comme solution aux références circulaires, alors qu'a mon sens, les weak doivent être utilisés aussi pour les observateurs sur une ressource. Donc Avec unique et shared, on ne doit avoir qu'un seul propriétaire par défaut)
Par défaut, je recommande le shared, pour le côté safe, mais avec qu'un seul propriétaire (donc qu'un seul shared sur une ressource, les autres utilisateurs de la ressources utilisent weak)
Cf mon article pour plus de détails