template template et héritage
Bonjour,
Je continue doucement mon apprentissage des templates et je m'interesse maintenant aux templates de templates.
Prenons l'exemple ci-dessous:
Code:
1 2 3
| template <typename T> class Vector;
template <template <typename> class V, class T> class VectorList;
template <typename T> class DerivedVectorList: public VectorList<Vector<T>, T>{}; |
Je veux donc implémenter un premier template Vector qui est un conteneur générique.
Je veux ensuite implémenter un conteneur de conteneur générique VectorList.
Je sèche sur la façon de réaliser un héritage (DerivedVectorList) de mon VectorList. Mon compilo (gcc 4.4.5 sur linux) me renvoie:
Code:
1 2
| type/value mismatch at argument 1 in template parameter list for template<template<class> class V, class T> struct VectorList
expected a class template, got Vector<T> |
quelqu'un aurait une idée ?
merci d'avance
P.S.: pour une raison que j'ignore, je ne peux plus utiliser typename mais seulement class dans un template template. Je ne sais pas si c'est mon compilo ou la norme... ça me gène pas forcément, je trouve juste ça bizarre.