读书人

在结构体中定义另一个结构体的数组U

发布时间: 2013-01-26 13:47:04 作者: rapoo

在结构体中定义另一个结构体的数组,UnmanagedType值该怎么设置?
先定义一个结构体


[StructLayout(LayoutKind.Sequential)]
public struct THREGION
{
public RECT rcBound;
public byte iAttribute;
RGNTYPE_xxx region type
public byte iField;
public byte nRecog_lang;
}
之后再定义一个结构体,成员是第一个结构体的数组形式

[StructLayout(LayoutKind.Sequential)]
public struct THREGION_Array
{
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 2)]
public THREGION[] region;
}
请问,第二个结构体中的UnmanagedType值应该设置为什么?
[解决办法]
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 2)]
你写的这样就对了

读书人网 >C#

热点推荐