Mono incorporato: creazione / marshalling una struttura C# in C ++
-
27-10-2019 - |
Domanda
Sto lavorando a un'applicazione che incorpora mono e ho una semplice struttura C# che è uno dei parametri di una delle mie funzioni.
Come posso creare e passare quella struttura da C ++ a C#?
Se ho una struttura C# come così:
struct CSStruct
{
int mInt;
float mFloat;
}
Posso creare una versione C ++ rigorosa e passarla a Mono come così?
struct CStruct
{
int mInt;
float mFloat;
}
// ...
CStruct var = { 10, 30.0f };
void* args[1] = { &var };
mono_runtime_invoke(method, NULL, args, NULL);
Soluzione
Sì, è così che dovrebbe funzionare: i tipi di valore vengono passati nell'array di argomenti in mono_runtime_invoke () prendendo il puntatore ai dati del tipo di valore.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow