2011-01-27 134 views
0

我已經發布了一些像這樣的東西,它幫助了,但我後來有問題,什麼都做不了。所以我回來了!C#「不包含需要'1'參數的構造函數」

Time time1; 
private void btnNewTime_Click(object sender, EventArgs e) 
     { 
      Time time1 = new Time(Convert.ToInt32(txtHour.Text.Trim(), Convert.ToInt32(txtMin.Text))); 


     } 

,並在時間類:

 public Time() 
     { 
      hour = 12; 
      minute = 00; 
     }//end of Time 

     public Time(int Hour, int Minute) 
     { 
      hour = Hour; 
      minute = Minute; 
     }//end of Time 

它想進入該參數的構造函數(第二個),但我得到的錯誤:

「不包含一個構造函數,需要'1'參數「

+0

請使用一致的代碼格式。 – 2011-01-27 22:24:14

回答

7

這是一個錯字,錯位的括號。

Time time1 = new Time(Convert.ToInt32(txtHour.Text.Trim()), Convert.ToInt32(txtMin.Text)); 
+0

/感嘆,面掌謝。我不能相信我錯過了那個。 >。>> – 2011-01-27 20:58:33

+0

哈哈哈!是的:) – Gabe 2011-01-27 20:59:05

1

它是一個錯字:

Time time1 = new Time(Convert.ToInt32(txtHour.Text.Trim()), Convert.ToInt32(txtMin.Text)); 
2

看起來你錯過了第一調整關閉Convert.ToInt32後括號(也失去了上月底的最後一個括號中的一個)。

而且,你的Time第一結構可以是:

public Time() 
    :this(12,0) 
{ 
} 

或者,如果你有VS2010/.NET4現在可以使用optional parameters

public Time(int Hour = 12, int Minute = 0) 
{ 
    hour = Hour; 
    minute = Minute; 
} 
4
Time time1 = new Time 
    (
     Convert.ToInt32(txtHour.Text.Trim()), 
     Convert.ToInt32(txtMin.Text) 
    ); 
2

你只提供1構造函數的參數:

Time time1 = new Time(Convert.ToInt32(txtHour.Text.Trim(), Convert.ToInt32(txtMin.Text))); 

您需要關閉的第一個論點第二組括號:

Time time1 = new Time(Convert.ToInt32(txtHour.Text.Trim()), Convert.ToInt32(txtMin.Text)); 
相關問題