关于c#:DateTime可以为null吗?

Can a DateTime be null?

本问题已经有最佳答案,请猛点这里访问。

Possible Duplicate:
DateTime “null” value

是否可以将datetime对象设置为空?


DateTime是一种值类型,与intdouble一样,没有有意义的null值。

在vb.net中,可以编写:

1
Dim d As DateTime = Nothing

但所有这些操作都是将d设置为默认的DateTime值。在C中,等效代码为:

1
DateTime d = default(DateTime);

…相当于DateTime.MinValue

也就是说,有Nullable类型,用于为任何值类型T提供null值。c中的Nullable的简写是DateTime?


不,您不能将DateTime作为值类型。

你可能想看看Nullable虽然(或日期时间?简而言之)


1
DateTime? myDate = null;

问号将为您提供一个可以为空的类型。可以设置为其本机值或为空的值。

DateTime本身是一个值类型。不能为空。


否--datetime是C中的结构,并且结构(值类型)不能为空。

但是,您可以使用Nullable.


通常,datetime不能为空,因为它是一个值类型,但是使用c 2中引入的可为空的运算符,可以完成此操作。


不,它是一个结构而不是类。是否将其设为可为空的类型,例如System.DateTime?或者使用System.DateTime.MinValue作为sentinel。