>백엔드 개발 >C++ >C의 Enum 클래스를 상속받을 수 있나요?

C의 Enum 클래스를 상속받을 수 있나요?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-10-31 21:27:29394검색

Can You Inherit From an Enum Class in C  ?

C의 기본 Enum 클래스 상속

C 프로그래밍에서 발생하는 일반적인 질문 중 하나는 다른 열거형에서 열거형을 상속하는 것이 가능한지 여부입니다. 이를 통해 기본 열거형에 정의된 값을 확장하는 파생 열거형을 생성할 수 있습니다.

제공된 코드 샘플은 C에서 기본 열거형 클래스 상속을 달성하는 방법을 보여줍니다.

<code class="cpp">#include <iostream>
#include <ostream>

class Enum
{
public:
    enum
    {
        One = 1,
        Two,
        Last
    };
};

class EnumDeriv : public Enum
{
public:
    enum
    {
        Three = Enum::Last,
        Four,
        Five
    };
};

int main()
{
    std::cout << EnumDeriv::One << std::endl;
    std::cout << EnumDeriv::Four << std::endl;
    return 0;
}</code>

이 예제에서 EnumDeriv 클래스는 Enum 클래스에서 상속됩니다. EnumDeriv의 Three 값은 Enum에 정의된 값의 끝에서 시작하도록 정의되어 있으므로 값이 원활하게 연속될 수 있습니다.

코드를 컴파일하고 실행하면 다음이 출력됩니다.

1
4

이는 EnumDeriv에 의한 Enum 클래스 값의 성공적인 상속과 파생된 열거형에 추가 값을 정의하는 기능을 보여줍니다. 이 패턴은 열거형 값을 보다 계층적인 방식으로 구성하고 확장하는 데 유용할 수 있습니다.

위 내용은 C의 Enum 클래스를 상속받을 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.