Действительно ли это возможно к P/Invoke чистая библиотека C++, или это должно быть перенесено в C?
Библиотеки C ++ могут быть вызваны P /, но вам нужно будет использовать "depends", чтобы найти искаженные имена методов (такие имена, как "@ 0! Classname @ classname @ zz ") и, например, методы экземпляра используют соглашение о вызове ThisCall в вызове p / и передают ссылку на экземпляр в качестве первого аргумента (вы можете сохранить результат конструктора в IntPtr).
Имя "чистой" библиотеки C ++ будет изменено компилятором, поэтому будет трудно получить правильное объявление P / Invoke. А метод C получает подчеркивание в начале, что может не будет в C ++. А метод C ++ нуждается в этом экземпляре в качестве первого параметра, вы должны указать его самостоятельно.
Я думаю, что вам нужно обернуть ваш C ++ API в C-совместимую серию методов.