2012-09-21 75 views
2

我得到一個異常「不能隱式地將類型'Microsoft.SolverFoundation.Services.Term'轉換爲'bool'」在下面的代碼中,應該如何我解決了它?不能隱式地將類型'Microsoft.SolverFoundation.Services.Term'轉換爲'bool'

Term a=null; 
      if(a==null)//<--this line exception 
      { 

      } 

下面是拍攝的快照

enter image description here

+0

這聽起來像一個編譯時錯誤,而不是例外?你能提供更多的細節? –

+0

嗨,我確定,是的,這是編譯時錯誤。 – william007

回答

5

的問題是Term類重寫的方式,它不會返回布爾相等運算符,但另一Term代替:http://msdn.microsoft.com/en-us/library/ff525374%28v=vs.93%29.aspx

我不確定他們爲什麼會這樣做,因爲它違背了覆蓋操作員的任何建議...

解決您的問題,使用此代碼來代替:

if(ReferenceEquals(a, null)) 
+0

但是這真的是我面臨的情況,仔細檢查,它是==,仍然給錯誤。 – william007

+0

@ william007:請顯示截圖。 –

+0

嗨,快照現在在問題 – william007

相關問題