Предположим, что enum
имеет следующий вид:
enum Days {Saturday, Sunday, Tuesday,Wednesday, Thursday, Friday};
Я хочу создать экземпляр этого enum
и инициализировать его с помощью правильного значения, поэтому я:
Days day = Days.Saturday;
Теперь я хочу проверить свою переменную или экземпляр с существующим значением enum
, поэтому я:
if (day == Days.Saturday)
{
std::cout<<"Ok its Saturday";
}
Что дает мне ошибку компиляции:
error: ожидаемое первичное выражение перед '. Маркер
Чтобы было ясно, в чем разница между высказыванием:
if (day == Days.Saturday) //Causes compilation error
и
if (day == Saturday)
?
На что эти два на самом деле ссылаются, в том, что один ОК, и один вызывает ошибку компиляции?