类型后面的问号的目的是什么(例如:int?myVariable)?

通常,问号的主要用途是用于条件x ? "yes" : "no"

但是我看到了它的另一种用法,但是找不到?例如该操作符的解释。

public int? myProperty

{

get;

set;

}

回答:

这意味着所讨论的值类型是可为空的类型

可空类型是System.Nullable结构的实例。可空类型可以表示其基础值类型的正确值范围,以及附加的空值。例如,可以为

Nullable<Int32>发音为“

Int32的Nullable”分配从-2147483648到2147483647之间的任何值,也可以为其分配空值。Nullable<bool>可以为A

分配值true,false或null。在处理包含可能未分配值的元素的数据库和其他数据类型时,为数字和布尔类型分配null的功能特别有用。例如,数据库中的布尔值字段可以存储值true或false,也可以未定义。

class NullableExample

{

static void Main()

{

int? num = null;

// Is the HasValue property true?

if (num.HasValue)

{

System.Console.WriteLine("num = " + num.Value);

}

else

{

System.Console.WriteLine("num = Null");

}

// y is set to zero

int y = num.GetValueOrDefault();

// num.Value throws an InvalidOperationException if num.HasValue

is false

try

{

y = num.Value;

}

catch (System.InvalidOperationException e)

{

System.Console.WriteLine(e.Message);

}

}

}

以上是 类型后面的问号的目的是什么(例如:int?myVariable)? 的全部内容, 来源链接: utcz.com/qa/404887.html

回到顶部