C# 赋值时无法更新结构列表

C# 赋值时无法更新结构列表,c#,list,struct,syntax-error,C#,List,Struct,Syntax Error,我正在做一些视觉识别,依赖.NET2.0 我的程序要大得多,但更新列表中的结构时遇到问题。 我的列表结构如下所示 NameSpace MyProg { Public partial class MainForm : Form { struct box { public int Pixelstart; public int Pixelend; public int Pixelcenter; } List<

我正在做一些视觉识别,依赖.NET2.0

我的程序要大得多,但更新列表中的结构时遇到问题。 我的列表结构如下所示

NameSpace MyProg
 {
 Public partial class MainForm : Form
   {
    struct box
    {
        public int Pixelstart;
        public int Pixelend;
        public int Pixelcenter;
    }
    List<box> boxDetect = new List<box>();
最后一行boxDetect.addboxTemp导致语法错误,该错误不会编译错误消息:使用未分配的局部变量boxTemp

我不明白,因为我在更新列表之前已经设置了它的数据字段。我在这里做错了什么?

试试这个:

box boxTemp = new box(); 

你对结构和类之间的区别了解多少?一般来说,可变结构是一个非常糟糕的主意。还要注意C区分大小写-如果!=如果,并添加!=添加一个简短但完整的示例将非常有用,最好遵循正常的.NET命名约定……我不明白您理解这一点有什么问题。您声明了一个变量-box-boxTempk,并尝试在不进行任何初始化的情况下使用它-在那些Ifs中,这种大写形式合法吗?。不知道能说得清楚多少。问题确实必须是,如果是小案例,并添加。我认为VisualStudio确实引发了一个错误,因为boxTemp可能是空的。虽然当我在上面看它时,我很清楚它不是空的,或者我没有得到这个错误?令人惊讶的是,这是有效的。。但现在我有点不知所措,为什么这能解决问题呢
box boxTemp = new box();