next up previous
suivant: Exception handling monter: Grammaire de C++ précédent: Overloading

Templates


template-declaration: 

export$_{\mathsf{opt}}$ template < template-parameter-list > declaration

template-parameter-list:
template-parameter
template-parameter-list , template-parameter

template-parameter:
type-parameter
parameter-declaration

type-parameter:
class identifier$_{\mathsf{opt}}$
class identifier$_{\mathsf{opt}}$ = type-id
typename identifier$_{\mathsf{opt}}$
typename identifier$_{\mathsf{opt}}$ = type-id
template < template-parameter-list > class identifier$_{\mathsf{opt}}$
template < template-parameter-list > class identifier$_{\mathsf{opt}}$ = template-name

template-id:
template-name < template-argument-list >
template-name:
identifier

template-argument-list:
template-argument
template-argument-list , template-argument

template-argument:
assignment-expression
type-id
template-name

explicit-instantiation:
template declaration

explicit-specialization:
template < > declaration



R Lalement
1999-09-16