回答
由於DateTime
是struct
,不是class
,你會得到一個DateTime
對象,不是參考,當你聲明該類型的字段或變量。而且,與int
不能爲null
一樣,這個DateTime
對象也不能爲空,因爲它不是一個引用。
添加問號把它變成一個nullable type,這意味着要麼它是一個對象DateTime
,或它是null
。
DateTime?
是句法糖Nullable<DateTime>
,其中Nullable
本身是struct
。
這是一個可以爲空的DateTime。原始類型/結構指示它是可空的版本之後的?
。
DateTime是一個永遠不能爲空的結構。從MSDN:
DateTime值類型表示值的範圍從午夜12:00:00,1月1日,0001公元或AD〜11(也稱爲共同的時代,或CE)的日期和時間:公元9999年12月31日下午59:59(行政長官)
DateTime?
可以爲空。
「DateTime ?」是C#中的等價「Nullable
它相當於可以爲空的< DateTime>。你可以追加「?」到任何原始類型或結構。
A ?作爲值類型的後綴允許空分配,這將是更不可能的。
http://msdn.microsoft.com/en-us/library/b3h38hb0.aspx
表示一個對象,其底層 類型爲值類型也可以是 分配一個空引用。
這意味着,你可以寫這樣的事情:
DateTime? a = null;
if (!a.HasValue)
{
a = DateTime.Now;
if (a.HasValue)
{
Console.WriteLine(a.Value);
}
}
日期時間?合成等價於可空<日期時間>。
它基本上給你一個額外的原始狀態。它可以是一個值,也可以是null。在不需要分配值的情況下它可以是有用的。因此而不是使用例如datetime。分鐘或最大,你可以將它賦值爲null來表示沒有值。
「原始」與「結構」不完全相同;這個語法適用於結構體 – 2010-12-15 07:21:03
正如我們所知道的,DateTime是一個結構意味着DateTime是一個值類型,所以當您聲明一個字段或該類型的變量時,您不能獲得一個DateTime對象,而不是一個引用,因爲DateTime不是一個類, null因爲值類型不接受null。與int相同,不能爲null。所以DateTime對象永遠不會爲空,因爲它不是一個引用。
但是有時我們需要可以爲空的變量或字段的值類型,那時候我們使用問號來使它們成爲可空類型,所以它們允許null。
例如: -
日期時間? date = null;
int? intvalue = null;
在上面的代碼中,變量日期是DateTime的一個對象,或者它是空的。相同的intvalue。
- 1. 什麼?在C#中是什麼意思?
- 2. 在Symfony2中,\ DateTime是什麼意思?
- 3. 是什麼意思:是什麼意思?
- 4. C中##是什麼意思?
- 5. 是什麼意思,在Python中是什麼意思?
- 6. 在c/C++中,^ =是什麼意思?
- 7. **是什麼意思,C?
- 8. %* c是什麼意思?
- 9. 這是什麼意思? [c#]
- 10. 這是什麼意思-c
- 11. 這是什麼意思 - C#
- 12. cmd/C是什麼意思?
- 13. 什麼是雙重?在C#中是什麼意思?
- 14. 是什麼(「{0,1}」,num);在C#中是什麼意思?
- 15. 在c#中'T:class'是什麼意思?
- 16. - >在C++中是什麼意思?
- 17. 在c#中,它是什麼意思'??'?
- 18. '「」''在C#中的「」+ ex'是什麼意思?
- 19. 在C++中'System :: String ^'是什麼意思?
- 20. 在c#中0u是什麼意思?
- 21. 什麼是(int)在c#中的意思?
- 22. 在C#中,/ =是什麼意思?
- 23. 在C#中,expressionStack_xx_x是什麼意思?
- 24. 什麼是connection.Dispose()在C#中的意思?
- 25. 「::」在C++中是什麼意思?
- 26. 「void *(*)(void *)」在C++中是什麼意思?
- 27. 在C++中,「name :: name」是什麼意思?
- 28. 「.. ::」是什麼意思?在C#中?
- 29. 在Objective C中,「^ {...}」是什麼意思?
- 30. 在C++中'&'是什麼意思?
可能的重複https://stackoverflow.com/questions/2690866/what-is-the-purpose-of-a-question-mark-after-a-type-for-example-int-myvariabl – Fandango68 2017-10-18 05:58:32