Existe-t-il un moyen de partager une définition enum entre le C++ natif (non géré) et le C# (géré)?Est-il possible de partager une déclaration enum entre C# et C++ non managé?
J'ai l'ENUM suivant utilisé dans le code administrable:
enum MyEnum { myVal1, myVal2 };
Notre application utilise parfois un composant géré. Ce composant C# obtient les valeurs de l'élément enum en tant qu'ints via une DLL d'interopérabilité C++ gérée (à partir de la DLL native). (Le dll Interop charge uniquement si le composant C# est nécessaire.) Le composant C# a dupliqué la définition enum:
public enum MyEnum { myVal1, myVal2 };
Y at-il un moyen d'éliminer la duplication sans tourner le natif C++ dll dans un dll géré?
Alternativement #if! __ cplusplus public ... – user7116
Je viens de tester quelque chose de similaire - mais le fichier s'appelle MyEnum.cs. Alors qu'il compile est C# sans règles spéciales. Dans mon fichier C++ cela fonctionne: #include "MyEnum.cs" –
Génial, content de l'avoir fait fonctionner! – jjxtra