2011-01-27 86 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)); 
相关问题