Ce n'est pas vraiment lié son cas de figure ici mais bon... J'ai travaillé dans deux grosses entreprises connues (Jeu vidéo). Un moteur maison dans chacune, et bien je t'assure que std::unique_ptr n'est pas utilisé pour des raisons que ton code doit être un minimum dépendant d'une librairie (std compris) et encore plus de boost qui est bien mais gros et complexe à tweaker ou dans le meilleur des cas c'est une std::unique_ptr maison.
Ce sont de bonnes librairies adaptées dans la plupart des cas je ne dit certainement pas le contraire. Elles répondent efficacement à beaucoup de problèmes. Mais si tu veux faire un code fonctionnant sur diverse architecture/compilateur/librairie correspondant à tes exacts besoins sans plus ni moins tu dois utiliser les pointeurs et savoir les utiliser... Rien que compiler ton C++ sur Android...maintenant l'intégration C++ est correct mais avant....
Si tu veux que ton code soit réactif au nouvelle technologie utilise le moins possible les librairies c'est tout ce que je veux dire
et Android NDK en est un bon exemple.
Mais la je m’égare ^^
Alors oui dans son cas elle peut utiliser std::unique_ptr mais il est archi faux de dire qu'il ne doit pas y avoir de pointeur.
Je lui conseille fortement de faire avec des pointeurs de comprendre ces erreurs, ces fuites mémoires et la logique de libération de la mémoire et ensuite elle peut jouer avec les std::unqiue_ptr.
Donc quand je vois ça:
Personnage* joueur = new Personnage(nomPersonnage);
Bas je me dit qu'elle apprend l'allocation mémoire
donc... on la fait apprendre à utiliser ceci. Ça fait partie des contraintes de programmeur, avoir accès/droit à certaines fonction ou non 
De plus, appeler delete puis vider le std::vecteur peut avoir un aspect pédagogiquement intéressant 
C'est dangereux si tu travaille avec quelqu'un qui ne sait pas utiliser l'allocation mémoire correctement. Sinon le programmeur est le seul responsable de son incompétence en la matière.
De plus les pointeurs nus ont aucune sémantique (qui est responsable de l'objet ? est-ce un pointeur ou un tableau à la C ?)
Faux. Ils en ont juste plusieurs 
(Troll on) Sinon autant apprendre Java directement et oublions le reste
(Troll off)
Partager