C和C++中的類中嵌套枚舉類型作用域不同雏吭,在C中可以直接引用锁施,而C++中作用域發(fā)生了變化,則僅類內(nèi)可見,引用時(shí)必須加上類名悉抵。
以下面的結(jié)構(gòu)體為例:
struct Date
{
int year;
int month;
int day;
enum WeekDay {
MONDAY = 1,
TUESDAY,
WEDNESDAY
} weekday;
};
在C中可以直接訪問枚舉類型:
printf("mon = %d\n", MONDAY);
在C++中必須加上類名:
printf("mon = %d\n", Date::MONDAY);