2015-11-05 208 views
-1

我是新來的C#和通用編程,我在大學的任務,我一直在問到編程計算器和我遇到了一些麻煩,這裏是我的代碼:無法指定爲「」,因爲它是一個「方法組」

private bool IsInfinity(long result) 
    { 
     if (result > Int32.MaxValue || result < Int32.MinValue) 
     { 
      errorFound = true; 
      return true; 
     } 
     else 
     { 
      return false; 
     } 
    } 

    private double Add(double number1, double number2) 
    { 
     if (IsInfinity = true) 
     { 
      errorFound = true; 
      return 0; 
     } 
     else 
     { 
      double result = number1 + number2; 
      result = Math.Round(result, 2); 
      return result; 
     } 
    } 

我有線路故障,

if (IsInfinity = true) 

,因爲它造成,上面寫着「不能分配給‘IsInfinity’,因爲它是一個‘方法組’」的錯誤,我正在努力尋找解決辦法,任何幫助將不勝感激。 感謝

+2

IsInfinity是採取一個參數的方法。它應該是(IsInfinity(long number)) – Partha

+1

你認爲這條線意味着什麼? – SLaks

回答

0

你的代碼有兩個問題。

首先,IsInfinity是一種方法(方法或基團,如果存在多個過載),因此需要用一些參數來調用它。像

IsInfinity(number1) 

的第二個東西,你想設置的方法來真的,而不是比較其結果爲真。你想要的是

if(IsInfinity(number1) == true) 

(注意兩個等號)。或者,更簡潔,

if(IsInfinity(number1)) 

(因爲它已經返回true,你不需要再做比較。)

+1

我會建議格式化你的答案,把你的(僞)代碼放在一個塊中以提高可讀性。 – lintmouse

+0

感謝小費dustmouse – Quantumplation

+0

此分類對我來說,愚蠢的錯誤真的。謝謝 – Jake

相關問題