[strike]Non.
Ce code est sympa mais il n'est qu'une sorte de std::vector<> simplifié.[/strike]
Le lien donné par loufoque en page précédante défini très bien mon souhait:
http://groups.google.com/group/comp....fa0db83caa9b90
Mais comme ce n'est pas supporté en C++ je cherche une manière de contourner cette lacune.
J'en suis à réécrire du C (sans ++), et donc je ne peux utiliser les fonctionnalités de la stl (algorithms, conteneurs, etc). Enfin si, mais en "copiant" les sources... Fastidieux.
EDIT: En fait, oui ! (partiellement)
Je viens de relire ce code et de fait il y a une allocation unique pour une instance de "base" et un nombre défini au runtime d'instances de "elem".
Toutes mes excuses pour ma première lecture "simpliste" hier en fin de journée.
Il n'y a plus qu'à trouver le truc pour utiliser des VLA avec les containers de la stl, comme ceci par exemple:
std::vector< VLA<base,elem> > v;
ou comme ceci (aïe
)
VLA< VLA<base1,elem1> , VLA<base2,elem2> > vla;
PS: aux admins du forum: La balise "strike" n'est pas supportée ?? (barrer du texte). Il faudrait.
Partager