[Template] Différentes syntaxes
Bonjour,
J'ai un manuel C++ dans lequel il est indiqué que la déclaration des classes templates se code ainsi :
Code:
1 2 3 4 5 6
|
template < class T >
class A
{
// définition de la classe A paramétrée par T
}; |
et de même pour mes fonctions template :
Code:
1 2 3
|
template < class T >
// définition de la fonction paramétrée par T |
Or dans d'autres sources (la FAQ entre autres) j'ai pu voir que le mot clef class était remplacé par 'typename'. Quelle est donc la différence ?
Ecrire :
Code:
1 2 3 4 5 6
|
template < class T >
class A
{
// définition de la classe A paramétrée par T
}; |
est-il équivalent à écrire :
Code:
1 2 3 4 5 6
|
template < typename T >
class A
{
// définition de la classe A paramétrée par T
}; |
merci ;)