ReSharper 2026.1 Help

コードインスペクション: [Flags] 属性が指定されていない列挙型に対するビット演算

列挙型が単一の個別の値のセットではなく ビットフラグで表される選択肢の組み合わせとして使用されている場合は、 [Flags] 属性で装飾することをお勧めします。

このインスペクションは、 [Flags] 属性を持たない列挙に ビット論理演算子が適用されるケースを報告します。

列挙型が実際にビットフラグのセットを表している場合は、 [Flags] 属性の適用を検討してください。 これによりコードの読者がインテンションをより理解しやすくなり、さらに ToString()Enum.Parse() などの一部システムメソッドが列挙型を処理する方法も変わります。

public enum Days { Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday } public class Test { public Test() { var weekEnd = Days.Saturday | Days.Sunday; Console.WriteLine(weekEnd); // Output: 7 } }
[Flags] public enum Days { Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday } public class Test { public Test() { var weekEnd = Days.Saturday | Days.Sunday; Console.WriteLine(weekEnd); // Output: Saturday, Sunday } }
2026 年 6 月 12 日