다음을 통해 공유


Typedef 이름은 이름 공간

사용 하 여 선언 되는 이름은 typedef (문 레이블은)을 제외한 다른 식별자와 동일한 이름 공간을 차지 합니다.따라서는 이전에 선언 된 이름과 같은 식별자를 제외 하 고는 클래스 형식 선언에 사용할 수 없습니다.다음 예제를 참조하십시오.

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

다른 식별자에 관련 된 이름 숨기기 규칙에는 표시 유형을 사용 하 여 선언 되는 이름은 규정 typedef.따라서 다음 예제는 C++에서는입니다.

// 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

참고 항목

참조

형식 지정자를 정의