Typedef 클래스 형식으로 사용
사용 하는 typedef 클래스 형식 지정자에서 명명 되지 않은 구조체 선언 거의 ANSI C 연습 때문에 지원 되는 typedef 선언.예를 들어, 많은 C 프로그래머는 다음을 사용 하십시오.
// typedef_with_class_types1.cpp
// compile with: /c
typedef struct { // Declare an unnamed structure and give it the
// typedef name POINT.
unsigned x;
unsigned y;
} POINT;
이러한 선언을 선언이 있습니다 있습니다.
POINT ptOrigin;
대신:
struct point_t ptOrigin;
C + +의 차이 typedef 이름과 실제 형식 (선언는 클래스, struct, union, 및 enum 키워드) 보다는 다릅니다.하지만 이름이 없는 구조체를 선언 하는 C 방법에 typedef 문을 계속 작동, C에서 처럼 없습니다 정식 이점을 제공
// typedef_with_class_types2.cpp
// compile with: /c /W1
typedef struct {
int POINT();
unsigned x;
unsigned y;
} POINT;
앞의 예제에서는 명명 된 클래스 선언 POINT 명명 되지 않은 클래스를 사용 하 여 typedef 구문입니다.POINT클래스 이름으로 간주 됩니다. 그러나 다음과 같은 제한 사항이 이러한 방식으로 도입 된 이름에 적용 됩니다.
이름 (동의어) 후 나타날 수 없습니다 있는 클래스, struct, 또는 union 접두사.
클래스 선언에 생성자 또는 소멸자 이름의 이름을 사용할 수 없습니다.
즉, 상속, 생성 또는 소멸 되는 방법이이 구문을 제공 하지 않습니다.