.NET CF 创建结构体问题

陌上_桑 2019-05-15 04:29:19
当前想创建一个结构体,以下是创建编译不通过的代码:

public struct DeviceInfo
{
public float[] para = new float[4];
//public float pressure;
//public float flow1;
//public float flow2;
//public float sound;
public string[] password = new string[3];
public uint[] btnlamp = new uint[3];
public bool[] signal = new bool[2];
public int execution (bool[] signal)
{
int exe = 0;
bool[2] sig = signal;
exe |= sig[0];
exe |= (sig[1])<<1;
return exe;
}
}


我想要达到的目的是:
1.创建一个含有4成员的浮点数组、含有3成员的字符串数组、含有3成员的uint数组、含有2成员的布尔数组以及一个方法;
2.此方法的参数 bool[] signal与结构体成员的2成员布尔数组对应;


鉴于本人能力有限,不知哪位大侠能看看该如何创建。
...全文
115 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
陌上_桑 2019-05-17
  • 打赏
  • 举报
回复
引用 4 楼 正怒月神 的回复:
exe |= sig[0]; 是要干嘛?一个Int,一个bool
本意是取位,现在Convert.Int16了
OrdinaryCoder 2019-05-17
  • 打赏
  • 举报
回复
引用 3 楼 陌上_桑 的回复:
[quote=引用 2 楼 OrdinaryCoder 的回复:]
C#结构不能public float[] para = new float[4];这样写 需要放到构造函数里


什么意思?能不能举个例子?[/quote]
结构体里不能直接给字段赋值 这个放到编译器直接就报错了 初始化结构体里的字段只能在构造函数里 或者创建之后赋值
正怒月神 2019-05-17
  • 打赏
  • 举报
回复
bool[2] sig = signal; 改成 bool[] sig = signal;
正怒月神 2019-05-17
  • 打赏
  • 举报
回复
exe |= sig[0]; 是要干嘛?一个Int,一个bool
陌上_桑 2019-05-17
  • 打赏
  • 举报
回复
引用 2 楼 OrdinaryCoder 的回复:
C#结构不能public float[] para = new float[4];这样写 需要放到构造函数里
什么意思?能不能举个例子?
OrdinaryCoder 2019-05-16
  • 打赏
  • 举报
回复
C#结构不能public float[] para = new float[4];这样写 需要放到构造函数里
陌上_桑 2019-05-16
  • 打赏
  • 举报
回复
没有人回复吗? 大佬们看看 啊

111,096

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧