C# ';操作在编译时以选中模式溢出';错误

C# ';操作在编译时以选中模式溢出';错误,c#,compiler-errors,numbers,C#,Compiler Errors,Numbers,当我尝试创建以下变量时: UInt64 mod32 = (UInt64)(UInt32.MaxValue + 1); 我得到了以下错误:“操作在编译时以检查模式溢出” 我如何修复/忽略此问题?您应该按照以下操作: UInt64 mod32 = UInt32.MaxValue + (UInt64)1; 当您执行(UInt64)(UInt32.MaxValue+1)时,程序将首先尝试执行UInt32.MaxValue+1,这是错误的原因,然后强制转换到UInt64可能的重复

当我尝试创建以下变量时:

UInt64 mod32 = (UInt64)(UInt32.MaxValue + 1);
我得到了以下错误:“
操作在编译时以检查模式溢出


我如何修复/忽略此问题?

您应该按照以下操作:

UInt64 mod32 = UInt32.MaxValue + (UInt64)1;
当您执行
(UInt64)(UInt32.MaxValue+1)
时,程序将首先尝试执行
UInt32.MaxValue+1
,这是错误的原因,然后强制转换到
UInt64

可能的重复