UInt64.MaxValue 字段
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
表示 UInt64 的最大可能值。 此字段为常数。
public: System::UInt64 MaxValue = 18446744073709551615;
public const ulong MaxValue = 18446744073709551615;
val mutable MaxValue : uint64
Public Const MaxValue As ULong = 18446744073709551615
字段值
Value = 18446744073709551615示例
以下示例使用 MinValue 和 MaxValue 字段来验证 Double 值在执行类型转换之前是否在类型范围内 UInt64 。 这会在运行时阻止 OverflowException 。
double decimalValue = -1.5;
ulong integerValue;
// Discard fractional portion of Double value
double decimalInteger = Math.Floor(decimalValue);
if (decimalInteger <= ulong.MaxValue &&
decimalInteger >= ulong.MinValue)
{
integerValue = (ulong) decimalValue;
Console.WriteLine("Converted {0} to {1}.", decimalValue, integerValue);
}
else
{
ulong rangeLimit;
string relationship;
if (decimalInteger > ulong.MaxValue)
{
rangeLimit = ulong.MaxValue;
relationship = "greater";
}
else
{
rangeLimit = ulong.MinValue;
relationship = "less";
}
Console.WriteLine("Conversion failure: {0} is {1} than {2}.",
decimalInteger,
relationship,
rangeLimit);
}
open System
let decimalValue = -1.5
// Discard fractional portion of Double value
let decimalInteger = floor decimalValue
if decimalInteger <= float UInt64.MaxValue && decimalInteger >= float UInt64.MinValue then
let integerValue = uint64 decimalValue
printfn $"Converted {decimalValue} to {integerValue}."
else
let rangeLimit, relationship =
if decimalInteger > float UInt64.MaxValue then
UInt64.MaxValue, "greater"
else
UInt64.MinValue, "less"
printfn $"Conversion failure: {decimalInteger} is {relationship} than {rangeLimit}."
Dim decimalValue As Double = -1.5
Dim integerValue As ULong
' Discard fractional portion of Double value
Dim decimalInteger As Double = Math.Floor(decimalValue)
If decimalInteger <= ULong.MaxValue AndAlso _
decimalInteger >= ULong.MinValue Then
integerValue = CULng(decimalValue)
Console.WriteLine("Converted {0} to {1}.", decimalValue, integerValue)
Else
Dim rangeLimit As ULong
Dim relationship As String
If decimalInteger > ULong.MaxValue Then
rangeLimit = ULong.MaxValue
relationship = "greater"
Else
rangeLimit = ULong.MinValue
relationship = "less"
End If
Console.WriteLine("Conversion failure: {0} is {1} than {2}", _
decimalInteger, _
relationship, _
rangeLimit)
End If
注解
此常量的值为 18,446,744,073,709,551,615:即十六进制0xFFFFFFFFFFFFFFFF。