C# 未赋值局部变量“total”的使用`
我想得到所有区间的总和,但我写这段代码时有一个错误:使用未分配的局部变量C# 未赋值局部变量“total”的使用`,c#,local-variables,unassigned-variable,C#,Local Variables,Unassigned Variable,我想得到所有区间的总和,但我写这段代码时有一个错误:使用未分配的局部变量total enter TimeSpan total; foreach (var grp in query) { TimeSpan interval = TimeSpan.FromMinutes(grp.Minuut); TimeSpan intervalH = TimeSpan.FromHours(grp.Sum); interval = interval + intervalH; total += i
total
enter TimeSpan total;
foreach (var grp in query)
{
TimeSpan interval = TimeSpan.FromMinutes(grp.Minuut);
TimeSpan intervalH = TimeSpan.FromHours(grp.Sum);
interval = interval + intervalH;
total += interval;
string timeInterval = interval.ToString();
dataGridView2.Rows.Add(i++, grp.Id, grp.Sum, grp.Minuut,timeInterval);
}
如果“总计”根本没有指定值,则是错误的。。。您还打算添加什么间隔?没有初始值分配给总计。在使用之前,必须指定一个值。从以下内容开始:
TimeSpan total = TimeSpan.Zero;
增加一个没有值的变量是没有意义的。所以这是一个编译器错误是很自然的
当字段被初始化为0时,必须在首次读取局部变量之前将其赋值。在您的程序中,
total+=interval代码>读取总计
以增加它。因此,在循环的第一次迭代中,它不会被赋值。在使用之前,您应该初始化total value
TimeSpan total = new TimeSpan();,
然后代码应该可以工作。我只想在datagridview中获得所有行的总数,列中填充了时间跨度。@Nick\u只需将其初始化为0即可。或者不管默认的任务是什么。TimeSpan total=新的TimeSpan(0);是我所需要的吗?上次编辑破坏了格式设置,enter TimeSpan
部分毫无意义。您可以还原或修复它吗?在添加“interval”之前声明并初始化“total”
TimeSpan total = new TimeSpan();,