2010-09-03 54 views

回答

40

DateTimevalue type,其中,就像intdouble,沒有有意義的null值。

在VB.NET,你可以這樣寫:

Dim d As DateTime = Nothing 

但是,這一切確實是設置d默認DateTime值。在C#的等效代碼會是這樣:

DateTime d = default(DateTime); 

...這相當於DateTime.MinValue

也就是說,有Nullable<T>類型,它用於爲任何值類型T提供null值。 C#中Nullable<DateTime>的簡寫爲DateTime?

+0

清晰準確的解釋... – Sandeep 2010-09-04 04:26:47

4
DateTime? myDate = null; 

問號會給你一個可爲空的類型。可以設置爲其本地值或爲空的值。

DateTime本身是一個值類型。它不能爲空。

2

不,它的結構不是一個類。或者使其成爲可空類型,例如System.DateTime的? myvalue的;或使用System.DateTime.MinValue作爲標記。

+0

小心你的措辭。可爲空的也是一個結構,可以包含null。 – 2010-09-03 12:29:59

4

不,您不能爲DateTime是一個值類型。

你可能想看看Nullable<DateTime>雖然(或日期時間?在短)

2

否 - DateTime是C#中的結構體,結構體(值類型)不能爲null。

你可以,但是,使用Nullable<DateTime>.

2

通常的DateTime不能爲空,因爲是值類型,但使用C#2中引入了可空操作,就可以完成這個