Я пытался найти способ передать std :: vector из собственного кода C ++ в статический метод в управляемом классе C ++ / CLI.Я новичок в C ++ (неуправляемый), и поэтому неудивительно, что мне не повезло с этим.Что мне хотелось бы, так это несколько указателей на то, как std: vector (любого типа, но предпочтительно double или int) можно преобразовать в управляемые массивы C ++ / CLI и / или массивы C #.Возможно, это не может быть сделано, поскольку я вижу только примеры, чтобы сделать обратное (например, C # для родного C ++), например, см. « преобразование System :: array в std :: vector ».Ниже я суммирую свои неудачные попытки.
Я могу передать двойной вектор, такой как
vector<vector<double> > dblvec
, в метод, определенный в собственном классе C ++ (где класс находится в проекте C ++ / CLI), но не в метод, определенный в классе ref (также в проекте C ++ / CLI).Компилятор жалуется, что метод (в классе ref) не существует (функция-кандидат недоступна).Я думаю, что это как-то связано с вектором> в качестве закрытой переменной (см., Например, C ++ CLI error C3767: функции-кандидаты недоступны ).
Любая помощь будет принята с благодарностью.