Встроенный моно: создание / маршалирование конструкции C# в C ++

StackOverflow https://stackoverflow.com/questions/8373253

  •  27-10-2019
  •  | 
  •  

Вопрос

Я работаю над приложением, которое внедряет моно, и у меня есть простой конструкция C#, который является одним из параметров для одной из моих функций.

Как создать и передать эту структуру из C ++ к C#?

Если у меня есть структура C# как так:

 struct CSStruct
 {
     int mInt;
     float mFloat;
 }

Могу ли я создать строгую версию C ++ и передать ее моно, как это?

struct CStruct
{
    int mInt;
    float mFloat;
}

// ...
CStruct var = { 10, 30.0f };
void* args[1] = { &var };
mono_runtime_invoke(method, NULL, args, NULL);
Это было полезно?

Решение

Да, именно так он должен работать: типы значений передаются в массиве аргументов в mono_runtime_invoke (), взяв указатель на данные типа значения.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top