Bonjour.
Je suis amené dans le cadre d’un Entity Component System (encore lui) à réinventer la roue et à programmer un vector acceptant plusieurs types en paramètres template. Il se base sur un tuple et des tableaux dynamiques gérés par la classe en interne.
Afin de rester fidèle à la version initiale du vector, j’ai jeté un petit coup d’œil à la doc' et suis tombé sur l’énigmatique passage
Generally, it is required that element type is a complete type and meets the requirements of Erasable, but many member functions impose stricter requirements.
ce qui traduit en français donne
Généralement, il est requis que le type de l’élément soit complet et remplisse la condition "être
Erasable
" (en gros), mais beaucoup de méthodes imposent des restrictions plus strictes.
Après avoir lu cette page, je ne suis pas plus avancé. Ma question est donc "concrètement, en quoi consiste Erasable
, que dois-je faire pour qu’une classe supporte toutes les fonctionnalités du vector et donc quelles restrictions dois-je imposer aux classes des utilisateurs de mon container (les réponses des questions 2 et 3 sont les mêmes)?
Merci d’avance .