Pregunta

Estoy trabajando en una aplicación que está incrustando mono, y tengo una estructura de C# simple que es uno de los parámetros de una de mis funciones.

¿Cómo creo y paso esa estructura de C ++ a C#?

Si tengo una estructura de C# como así:

 struct CSStruct
 {
     int mInt;
     float mFloat;
 }

¿Puedo crear una versión estricta de C ++ y pasarla a mono como así?

struct CStruct
{
    int mInt;
    float mFloat;
}

// ...
CStruct var = { 10, 30.0f };
void* args[1] = { &var };
mono_runtime_invoke(method, NULL, args, NULL);
¿Fue útil?

Solución

Sí, esa es la forma en que se supone que debe funcionar: los tipos de valor se pasan en la matriz de argumentos en mono_runtime_invoke () llevando el puntero a los datos de tipo de valor.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top