Comment faire pour étendre une classe de modèle, par exemple un vecteur? Le code ci-dessous ne fonctionne pas. Le compilateur se plaint que 'Vector' n'est pas un modèle.Extension du modèle de classe
template <typename T>
class Vector<T> : public std::vector<T>
{
public:
void DoSomething()
{
// ...
}
};
Vous ne devriez pas hériter des conteneurs de la bibliothèque standard. Ils ne sont pas conçus pour ça. Par exemple, ils n'ont pas de destructeurs virtuels, donc si vous ne faites pas attention, votre code se cassera lorsque vos vecteurs dérivés seront détruits. – jalf