Wrapper C -> C#: Les customs types
Bonjour,
Comm expliqué dans un post précédent, je suis entrain de faire un wrapper d'une lib C en C#.
Je me pose une question concernant la conversion des "typedef" C.
Exemple :
Structure C :
Code:
1 2 3 4 5 6
| typedef struct
{
EntType type;
Pnt end1;
Pnt end2;
} Linedef, Clinedef; |
EntType est un enum, pas de pb de conversion avec lui.
Mais Pnt est def comme ceci :
Code:
typedef double Pnt[2];
La question étant, puis-je créer un type équivalent en C#, ou puis-je simplement utiliser "double" ?
En C# :
Code:
1 2 3 4 5 6 7 8 9
|
[StructLayout(LayoutKind.Sequential)]
public class Linedef
{
public EntType type;
public double[] end1; // ???
public double[] end2;
} // Linedef, Clinedef;
public class CLinedef : Linedef {}; |
Voir, avec initialisation :
Code:
1 2 3 4 5 6 7 8 9
|
[StructLayout(LayoutKind.Sequential)]
public class Linedef
{
public EntType type;
public double[] end1 = new double[2]; // ???
public double[] end2 = new double[2];
} // Linedef, Clinedef;
public class CLinedef : Linedef {}; |
Quelle est la meilleurs méthode ?
Merci !