Bonjour,
Je travaille en ce moment sur un exercice de style perso qui va me permmetre je l'espère de bien comprendre l'utilisation des templates: "les pointeurs intelligents" (smart pointers).
J'ai réalisé deux solutions:
- Pointer-1.h
- Pointer-2.h
La première solution me plasait bien. Cependant je voulais qu'au niveau de la vérification du nombre d'instance à allouer tout se fasse à la compilation. C'est la raison d'exister de la deuxième solution.
J'aurais deux petites questions concernant la deuxième solution:
- pour éviter de pouvoir créer un Pointer<T, 0>, c'est à dire allouant 0 instance de classe T, j'ai mis le constructeur de la spécialisation corespondante en private. Je ne trouve pas ça trés propre, y aurait il une autre manière de procéder?
- Ensuite il est impossible d'initialiser un pointeur de N instances avec un pointeur de M instance (Pointer<T, 10> p; Pointer<T, 11> p1 = p. Comment je peux faire pour que ça le soit?
Enfin je suis preneur de tout conseil au sujet de mon implémentaion des pointeurs intelligents.
Partager