Bonjour à tous,
j'essaie actuellement d'implémenter une classe shared_vector, qui serait un mix entre un std::vector et un std::shared_ptr, l'idée étant que que lorsque je fais une copie de mon vector je ne fais qu'incrémenter un compteur de référence, et lorsque mon vector est détruit je décrémente ce compteur. Une fois que celui-ci atteint 0, les elements de mon vector sont alors détruit. (Rien de méchant jusqu'ici).
J'aimerai pouvoir passer en paramètre template un type d'allocateur à utiliser pour effectuer les allocations de mémoire. Le hic, c'est que quand j'alloue de la mémoire, je dois pouvoir réserver de la mémoire pour stocker les éléments dans mon tableau + mon compteur de références. Or, l'interface des allocateurs ne permet que de reserver de la mémoire pour X éléments d'un type donné, mais ne permet pas de spécifier une quantité précise de mémoire à allouer.
Qqun a une idée de comment je peux faire?
Partager