#region 3.1 枚举配合swich,定义气缸/IO等 具体指出用途对应的选项,然后用分支进行选择.
public enum OutIo//感觉直接可以把枚举当成一张IO表.
{
//这里的0123,,,12,13,14就可以作为标识符,用判断语句执行具体的操作,或者控制具体的气缸,IO。
///
/// 打开左边顶气缸 |IO位0
///
Open_Qi1=0,
///
/// 打开右边顶气缸
///
Open_Qi2=1,
Open_Qi3=2,
Close_Qi1=12,
Close_Qi2=13,
Close_Qi3=14
}
#endregion
#region 3.2 枚举配合swich,定义气缸/IO等 具体指出用途对应的选项,然后用分支进行选择.d
//初始化枚举数,把枚举里面的成员赋值给这个变量。
//实际情况中,获取应该用IF判断一下传入是否在分支选择的范围内。
this._d = OutIo.Open_Qi2;//这里就可以根据信号情况,用if进行不同的赋值。
//swich 回车 会自动添加枚举选项,如果没有出现,就单机左边黄灯泡选择 补全.
switch (this._d)
{
case OutIo.Open_Qi1:
Console.WriteLine("在这里可以执行打开气压1的操作。");
Console.WriteLine(this._d);//这里输出的是case名字,不是0,这样更直观.
//这虽然比直接用If判断并直接执行动作,多了枚举和分支,但这里的结构更加的明确,调试起来方便,查看容易
//缺点的话,就是前期多用到了一些程序类型,处理速度相较之下,会慢一些.
break;
case OutIo.Open_Qi2:
//如何显示_d以及_d里面的值,即:显示OPen_Qi2在枚举中的数值.? 用字符串转化
string m_s = string.Format("{0} {1}", this._d, Convert.ToInt32(this._d));
Console.WriteLine(m_s);
//效果和上面的一样
Console.WriteLine("{0},{1}",Convert.ToString(this._d), Convert.ToInt32(this._d));
break;
case OutIo.Open_Qi3:
break;
case OutIo.Close_Qi1:
break;
case OutIo.Close_Qi2:
break;
case OutIo.Close_Qi3:
break;
default:
break;
}
#endregion