Как передать массив пар из 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» при передаче двойного массива в функцию.