다음을 통해 공유


익명 클래스 형식

클래스는 익명일 수 있으므로 식별자 없이 선언할 수 있습니다. 다음과 같이 클래스 이름을 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;

특정 제한이 익명 클래스에 적용됩니다. 익명 공용 구조체에 대한 자세한 내용은 공용 구조체를 참조하십시오. 익명 클래스:

  • 생성자나 소멸자를 가질 수 없습니다.

  • 타원을 사용하여 형식 검사를 통과하지 않으면 함수에 인수로 전달할 수 없습니다.

  • 함수에서 반환 값으로 반환될 수 없습니다.

참고 항목

참조

클래스 형식 정의