0
我已经在结构中声明了结构类型的参数,并且当我尝试从结构中使用该参数时,出现错误NullReferencePointer
。如何从结构中使用结构类型的参数?
另外我知道你不能初始化结构中的结构。有没有办法使用该参数而没有得到那个错误?
我想使用TCommandBuffer
struct中的TCommandParam
参数。
[StructLayout(LayoutKind.Sequential)]
public struct TCommandParam
{
public int iValue;
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 4096)]
public byte[] sValue;
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 64)]
public byte[] FrameFD;
}
[StructLayout(LayoutKind.Sequential)]
public struct TCommandBuffer
{
public int Command;
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 10)]
public TCommandParam[] Param;
public int ReturnValue;
}
我试过,但我也有同样的错误。 –
那么你必须在某处正确初始化'TCommandBuffer'?初始化时,构造函数被调用并且成员被初始化。 – Abhishek
是的,对不起,它从第一次开始工作,这只是我有另一个代码未初始化,这就是为什么我写我有同样的错误。谢谢您的帮助 !!!。 –