Varsayalım ki enum
aşağıdakine benzer:
enum Days {Saturday, Sunday, Tuesday, Wednesday, Thursday, Friday};
Bunun bir örneğini oluşturmak enum
ve uygun bir değerle başlatmak istiyorum , bu yüzden:
Days day = Days.Saturday;
Şimdi değişkenimi veya örneğimi var olan bir enum
değerle kontrol etmek istiyorum , bu yüzden yapıyorum:
if (day == Days.Saturday)
{
std::cout << "Ok its Saturday";
}
Bu bana bir derleme hatası veriyor:
hata: '.' öğesinden önce beklenen birincil ifade. jeton
Açık olmak gerekirse, aşağıdakiler arasındaki fark nedir:
if (day == Days.Saturday) // Causes compilation error
ve
if (day == Saturday)
?
Bu ikisinin gerçekte neyi ifade ediyor, biri iyi ve biri derleme hatasına neden oluyor?