název_typu
Kompilátoru sděluje, že je neznámý identifikátor typu.
typename identifier;
Poznámky
Pomocí tohoto klíčového slova pouze v definicích šablony.
Toto klíčové slovo je použít, pokud je závislý na šablonu argument; kvalifikovaný název název je nepovinné, pokud kvalifikovaný název není závislá.Další informace naleznete v tématu šablony a překlad.
TypeName lze libovolný typ kdekoli v šabloně prohlášení nebo definice.Není povoleno v seznamu základní třídy, pokud jako argument šablony šablona základní třídy.
template <class T>
class C1 : typename T::InnerType // Error - typename not allowed.
{};
template <class T>
class C2 : A<typename T::InnerType> // typename OK.
{};
Typename místo lze také použít klíčové slovo třídy jsou uvedeny v parametru šablony.Shodné jsou například následující příkazy:
template<class T1, class T2>...
template<typename T1, typename T2>...
Příklad
// typename.cpp
template<class T> class X
{
typename T::Y m_y; // treat Y as a type
};
int main()
{
}