【发布时间】:2012-04-25 23:48:28
【问题描述】:
我正在尝试用一些值填充包含在结构中的数组,但无论我尝试什么,我都会不断收到错误。
我的结构是这样的
public struct boardState
{
public int structid;
public char[] state;
}
在初始化器中,我正在创建一个新的 boardState 并尝试用像这样的一些值来填充它
boardState _state_ = new boardState();
_state_.structid = 1;
_state_.state[9] = {'o','-','-','-','o','-','-','-','-','o'};
structid 似乎工作正常,但在 {'o','-' etc etc} 告诉我 ';预期的'。我已经浏览了上面的代码,并确保没有 ;'s 丢失(由运行没有此行的程序确认)所以我猜你不能以这种方式分配给数组。如何分配给状态数组?
编辑:-添加了我错过但仍然出现相同错误的逗号。
【问题讨论】:
-
旁注:请考虑使用类而不是结构。或者请确认您知道在 C# 中使用 struct 的后果是什么 (stackoverflow.com/questions/13049/…)
-
我只想说我同意 Alexei 的观点,并补充说你有一个可变结构,这通常被认为是一个坏主意。此外,通过在结构中包含一个对象,结构的大部分用途都消失了。