Sdílet prostřednictvím


Členové šablony třídy

Stejně jako členové třídy jsou členové třídy šablon.Mohou být statické nebo nonstatic, data nebo funkce členů nebo i další šablony.Mohou být definovány uvnitř šablony třídy nebo mimo něj.Členy třídy šablony můžete odkazovat na neznámé typy uvedené v seznamu argumentů šablonu jako by byly názvy platný typ a odkazují na neznámý objekt hodnoty uvedené v seznamu argumentů šablony, jako kdyby byly konstantní výrazy.

Když členové podle šablony třídy jsou definována mimo deklaraci třídy, musí být deklarováno jinak než nontemplated tříd.Prohlášení musí předcházet syntaxe určující šablonu třídy, která je členem funkce.

template < template-argument-list > definition

Poznámky

Declarator pro členské funkce mimo třídu šablony musíte zadat argumenty šablony.

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

Příklad

// members_of_class_templates1.cpp
// compile with: /c
template <class T, int i> 
class TempClass {
   int MemberSet(T, int);
};

template <class T, int i> 
int TempClass< T, i >::MemberSet( T a, int b ) {
   if( ( b >= 0 ) && (b < i) ) {
      Tarray[b++] = a;
      return sizeof( a );
   }
   else
      return -1;
}

C++ umožňuje také vnořené šablony, uvedené jako člen šablony.Člen šablony mohou být šablony vnořené třídy nebo členské funkce šablony.

Viz také

Referenční dokumentace

Šablony třídy