cpp_enum_class - 8BitsCoding/RobotMentor GitHub Wiki

cpp_cpp11_enum_class

๋ฌธ์ œ C์Šคํƒ€์ผ Enum

enum eScoreType {
    Assignment1,
    Assignment2,
    Assignment3,
    Midternm,
    Count,
};

enum eStudyType {
    Fulltime,
    Halftime,
};

// main
int main() {
    eScoreType type = Midterm;
    eStudyType studyType = Fulltime;

    // ์•„๋ž˜์™€ ๊ฐ™์€ ๊ฒฝ์šฐ๊ฐ€ ๋ฌธ์ œ๋‹ค.
    int num = Assignment3;
    if(type == Fulltime)
}

์ด๋Ÿฐ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ์ด์œ ๋Š” enum์ด ํ•˜๋‚˜์˜ intํ˜•์ด๊ธฐ์— ์ ‘๊ทผ์ด ์‰ฝ๋‹ค


enum class eScoreType {
    Assignment1,
    Assignment2,
    Assignment3,
    Midternm,
    Count,
};

enum class eStudyType {
    Fulltime,
    Halftime,
};

// main
int main() {
    eScoreType type = eScoreType::Midterm;
    eStudyType studyType = eStudyType::Fulltime;

    int num = eScoreType::Assignment3;      // Error
    if(type == eScoreType::Fulltime)                    // Error
}