Sdílet prostřednictvím


Obor názvů typedef

Názvy deklarované pomocí direktivy typedef jsou umístěny ve stejném oboru názvů jako jiné identifikátory (kromě popisů příkazů).Proto nemohou používat identifikátor shodný s dříve deklarovaným názvem kromě deklarací typů tříd.Příklad:

// typedef_names1.cpp
// C2377 expected
typedef unsigned long UL;   // Declare a typedef name, UL.
int UL;                     // C2377: redefined.

Pravidla skrývání názvů platná pro jiné identifikátory řídí viditelnost i názvů deklarovaných pomocí direktivy typedef.Následující příklad je proto v jazyce C++ platný:

// typedef_names2.cpp
typedef unsigned long UL;   // Declare a typedef name, UL
int main()
{
   unsigned int UL;   // Redeclaration hides typedef name
}

// typedef UL back in scope

Viz také

Referenční dokumentace

typedef – specifikátor