代码检查:对于此类型的左操作数,Shift 次数可疑。
本检查会报告所写 Shift 次数与实际使用 Shift 次数不符的 Shift 表达式。 在 C# 中,运行时会截断 Shift 操作的右操作数。 例如,将 int 进行 Shift 40 实际上会 Shift 8 次。 通常意味着左操作数类型错误或计数不正确。
示例
const ulong mask = 0x8000_0000 << 1;
const ulong mask = (ulong)0x8000_0000 << 1;
快速修复
请更正左操作数类型或 Shift 次数,以确保操作按预期执行。
2026年 5月 8日