Я новичок в оболочке C ++ / CLI для C#, у меня есть некоторые проблемы при передаче массива в C#.
Собственный c ++
const double *NDimInversion::GetOutputAverage() const
{
if ( mOutputOk )
return mAvgY.data().begin();
else
throw runtime_error("Error in NDimInversion::GetOutputAverage(): output not available.");
}
Собственный заголовок
const double *GetOutputAverage() const;
Оболочка заголовка
public ref class NDimInversion
public:
array<double>^ GetOutputAverage();
Оболочка c ++
array<double>^ NDimInversion::GetOutputAverage() {
array<double> tempArr = nDimInversion->GetOutputAverage(); // ????
const int SIZE = tempArr.size();
array<double>^ tempReturn = gcnew array<double>(SIZE);
for (int i = 0; i < SIZE; i++)
{
tempReturn[i] = tempArr[i];
}
return tempReturn
};
Я планирую преобразовать собственный возврат в массив CLI, но я не смог передать массив. Можете ли вы указать мне, что мне не хватает?
Нужно ли мне также переносить ключевое слово "const" в CLI?