C# 中的结构体如何样定义一个定长的数组成员
C# 中的结构体怎么样定义一个定长的数组成员?
C# 中的结构体怎么样定义一个定长的数组成员?
比如C中的结构体为:
在C#中应该怎么定义?
因为我在C#中使用构造函数,但是不允许有无参数的构造函数。
所以不知道怎么办了。
另外,C#中怎么使用#ifndef #define #endif 宏定义,是否可以使用?
------解决方案--------------------
我的错,确实不行,看来我想多了
在 C# 中,可以使用 fixed 语句在数据结构中创建带有固定大小数组的缓冲区。 使用现有代码(如使用其他语言、预先存在的 DLL 或 COM 项目编写的代码)时,这种方法非常有用。 固定数组可采用允许普通结构成员使用的任何特性或修饰符。 唯一的限制是,数组类型必须是 bool、byte、 char、 short、int、long、sbyte、ushort、uint、ulong、float 或 double。
------解决方案--------------------
如果是在字节流中读取结构体可以这么定义
C# 中的结构体怎么样定义一个定长的数组成员?
比如C中的结构体为:
struct stru_test
{
int arrNumber[10];
}
在C#中应该怎么定义?
因为我在C#中使用构造函数,但是不允许有无参数的构造函数。
所以不知道怎么办了。
另外,C#中怎么使用#ifndef #define #endif 宏定义,是否可以使用?
------解决方案--------------------
我的错,确实不行,看来我想多了
在 C# 中,可以使用 fixed 语句在数据结构中创建带有固定大小数组的缓冲区。 使用现有代码(如使用其他语言、预先存在的 DLL 或 COM 项目编写的代码)时,这种方法非常有用。 固定数组可采用允许普通结构成员使用的任何特性或修饰符。 唯一的限制是,数组类型必须是 bool、byte、 char、 short、int、long、sbyte、ushort、uint、ulong、float 或 double。
------解决方案--------------------
如果是在字节流中读取结构体可以这么定义
struct stru_use
{
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 100)]
public GLOBAL_WAYPOINT[] globalWaypoint;
};