C#结构体数组初始化问题新方法
全才欧巴 2013-01-31 06:08:15 C#抛弃了C++那种定义结构体数组直接在大括号里付值的方式。
如果用普通的初始化方法又太麻烦。
经过实践,我发现了以下的方式,可以简洁的初始化。
struct AlarmType
{
public string AlarmName;
public string AlarmId;
public AlarmType(string name,string Id)
{
AlarmName = name;
AlarmId = Id;
}
}
static AlarmType[] alarmTypes = { new AlarmType("摄像头-视频遮挡", "CAM_HIDEDETECT" ), new AlarmType( "摄像头-移动侦测", "CAM_MOTIONDETECT" ), new AlarmType("摄像头-视频丢失", "CAM_VIDEOLOSE" ),
new AlarmType("摄像头-入侵","CAM_VIDEOLOSE"),new AlarmType("摄像头-入侵","CAM_INTE_INTRUSION"),new AlarmType("摄像头-越界","CAM_INTE_CROSSLINE"),
new AlarmType("摄像头-移走","CAM_INTE_LOSTDETECT"),new AlarmType("摄像头-遗留","CAM_INTE_STATICDETECT"),new AlarmType("摄像头-徘徊","CAM_INTE_WANDERDETECT"),
new AlarmType("摄像头-逆行","CAM_INTE_CONVERSEDETECT"),new AlarmType("摄像头-喷涂","CAM_INTE_DAMAGEDETECT"),new AlarmType("摄像头-信号丢失","CAM_INTE_DROPOUTDETECT"),
new AlarmType("摄像头-画面冻结","CAM_INTE_FREEZEDETECT"),new AlarmType("摄像头-滚屏","CAM_INTE_SCROLLDETECT"),new AlarmType("摄像头-过亮","CAM_INTE_OVERDARKDETECT"),
new AlarmType("摄像头-过暗","CAM_INTE_OVERDARKDETECT"),new AlarmType("摄像头-偏色","CAM_INTE_COLORCASTDETECT"),new AlarmType("摄像头-噪声干扰","CAM_INTE_ELECTRICALNOISEDETECT"),
new AlarmType("摄像头-模糊","CAM_INTE_FOCUSDETECT"),new AlarmType("视频锁定","CU_LOCK_VIDEO"),new AlarmType("云台锁定","CU_LOCK_PTZ")};