Я пытаюсь обернуть класс C++ в C++/cli, скелет класса ниже.Обтекание C++-функции, которая принимает int * в C++/cli
public class UnmanagedClass{
//...
// This function stores the size in the x and y values
int GetSize(int* x, int* y);
};
Я хочу, чтобы сделать управляемый класс, который оборачивает этот класс, так что я попытался следующие:
public ref class ManagedCode{
UnmanagedClass* _pUnamangedClass;
//...
int GetSize(int% x, int% y){
return _pUnmanagedClass->GetSize(&x,&y)
// Also Tried
// return _pUnmanaged->GetSize(x,y)
};
};
Я получаю сообщение об ошибке: «internal_ptr несовместим с типом параметра„междунар *“»
return _pUnmanagedClass->GetSize(&x, &y)
Любые идеи о том, где я ошибаюсь.
I нашел этот же ответ и разместил его прямо перед вами, но ваше объяснение, что сборщик мусора может захотеть переместить значение int%, помогает мне понять, почему синтаксис настолько уродлив. Благодаря! –