익명 클래스 형식
클래스는 익명일 수 있으므로 식별자 없이 선언할 수 있습니다. 다음과 같이 클래스 이름을 typedef 이름으로 바꿀 때 유용합니다.
typedef struct
{
unsigned x;
unsigned y;
} POINT;
참고
이전 예제와 같이 익명 클래스를 사용하면 기존의 C 코드와 호환성을 유지하는 데 도움이 됩니다.일부 C 코드에서는 익명 구조체와 함께 typedef를 사용하는 것이 일반적입니다.
다음과 같이 클래스 멤버를 참조하여 별도의 클래스에 포함되지 않은 것처럼 나타내려는 경우에도 익명 클래스가 유용합니다.
struct PTValue
{
POINT ptLoc;
union
{
int iValue;
long lValue;
};
};
PTValue ptv;
앞의 코드에서 다음과 같이 개체 멤버 선택 연산자(.)를 사용하여 iValue에 액세스할 수 있습니다.
int i = ptv.iValue;
특정 제한이 익명 클래스에 적용됩니다. 익명 공용 구조체에 대한 자세한 내용은 공용 구조체를 참조하십시오. 익명 클래스:
생성자나 소멸자를 가질 수 없습니다.
타원을 사용하여 형식 검사를 통과하지 않으면 함수에 인수로 전달할 수 없습니다.
함수에서 반환 값으로 반환될 수 없습니다.