【发布时间】:2012-01-10 11:48:32
【问题描述】:
可能重复:
What does “DateTime?” mean in C#?
What does the ? mean after a type?
我有一个函数声明,在数据类型之后包含一个问号,例如:
private TimeSpan? sometime()
{
}
这是什么意思?
【问题讨论】:
-
是的,它等于 Nullable
可能重复:
What does “DateTime?” mean in C#?
What does the ? mean after a type?
我有一个函数声明,在数据类型之后包含一个问号,例如:
private TimeSpan? sometime()
{
}
这是什么意思?
【问题讨论】:
TimeSpan? 是System.Nullable<TimeSpan> 的简写。
TimeSpan 是一种值类型,不能采用 null 值。通过将其包裹在System.Nullable<> 中,它可以是null。如果没有 ?,从函数返回 null 是非法的。
【讨论】:
表示一个对象,其基础类型是一个值类型,可以 也像引用类型一样被赋值为 null。
你可以写TimeSpan?,而不是Nullable<TimeSpan>。
【讨论】:
Nullable,即值类型可以为空。
【讨论】:
表示值类型是nullable type
【讨论】:
基本上它是一个可以为空的时间戳。
【讨论】: