EmxArray_real_T a C # struct plus initialisation
Estoy tratando de crear un 'constructor' para esta estructura C # (intento inicial incluido):
[StructLayout(LayoutKind.Sequential)]
public struct emxArray_real_T
{
public IntPtr data;
public IntPtr size;
public int allocatedSize;
public int numDimensions;
[MarshalAs(UnmanagedType.U1)]
public bool canFreeData;
public emxArray_real_T(double[] cSharpData)
{
var arraySize = Marshal.SizeOf(cSharpData[0]) * cSharpData.Length;
this.data = Marshal.AllocHGlobal(arraySize);
// ????
numDimensions = 1;
canFreeData = false;
}
}
La estructura de C correspondiente a C se parece a esto:
typedef struct emxArray_real_T
{
real_T *data;
int32_T *size;
int32_T allocated;
int32_T numDimensions;
boolean_T canFreeData;
} emxArray_real_T;
y se explicaaquí.
Esperamos cualquier comentario / respuesta. ¡Gracias!