emxArray_real_T nach C # struct plus Initialisierung

Ich versuche, einen 'Konstruktor' für diese C # -Struktur zu erstellen (erster Versuch eingeschlossen):

[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;
}
}

Die C-entsprechende C-Struktur sieht folgendermaßen aus:

typedef struct emxArray_real_T
{
   real_T *data;
   int32_T *size;
   int32_T allocated;
   int32_T numDimensions;
   boolean_T canFreeData;
} emxArray_real_T;

und wird erklärtHier.

Freue mich auf Kommentare / Antworten. Vielen Dank!

Antworten auf die Frage(1)

Ihre Antwort auf die Frage