"Чистая" библиотека C ++ будет иметь искаженное имя от компилятора, поэтому будет трудно получить правильное объявление P / Invoke.
И метод C получает подчеркивание в начале, которого может не быть в C ++.
И методу C ++ нужен этот экземпляр в качестве первого параметра, вы должны будете указать его самостоятельно.
Я думаю, что вам нужно обернуть ваш C ++ API в C-совместимую серию методов.