任何人都可以告訴我爲什麼這不會編譯?帶DateTime的條件運算符?將不會編譯
DateTime? completedDT;
bool completed = false;
completedDT= completed ? DateTime.Now : null;
我本來以爲,因爲它是寫一個爲空的對象(DateTime?
)使用空的是可以接受的。相反,我得到這個錯誤:
Error 19 Type of conditional expression cannot be determined because there is no implicit conversion between 'System.DateTime' and 'null'
capital DT and dt in completedDT? – 2014-10-03 14:35:29
你必須顯式地將條件語句中的一個操作數轉換爲'DateTime?',比如'completedDT = completed? DateTime.Now:(DateTime?)null;' – Habib 2014-10-03 14:35:39
將右側投射到'DateTime?' – 2014-10-03 14:35:48