Enumのif条件があります。私の列挙型は次のとおりです。if条件での使用フラグ
public enum EmploymentType
{
Type1 = 1,
Type2 = 2,
Type3 = 3
}
と、この条件のためにこの条件
EmploymentType type = EmploymentType.Type1 ;
if (type.HasFlag(EmploymentType.Type1 | EmploymentType.Type2)) //if (type == (EmploymentType.Type1 | EmploymentType.Type2))
{
return true;
}
else
{
return false;
}
期待真の結果が、結果はfalseです。どうして?
なぜ、 '(タイプ== EmploymentType.Type1 ||タイプ== EmploymentType.Type2)であれば' –
[Enum Flags Attribute](http://stackoverflow.com/questions/8447/enum-flags-attribute)を読んでください。 –