Как передать массив пар из C # в C ++ (DLL)

сигнатура функции C ++:

int Eye_GetPositionSC2(std::string fname_mob, double sensors[9], int &map_x, int &map_y)

сигнатура функции C #:

[DllImport(@"eyeWhere.dll", CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Unicode)]
public static extern int Eye_GetPositionSC2([MarshalAs(UnmanagedType.LPWStr)]string filename, [In , MarshalAs(UnmanagedType.LPArray)]double[] sensors)

код компилируется хорошо, но существует «AccessViolationexception» при передаче двойного массива в функцию.

Ответы на вопрос(1)

Ваш ответ на вопрос