OVH Cloud OVH Cloud

debutant

1 réponse
Avatar
polo
bonjour a tous
je debute en c# et je rencontre un probleme sur la forme et la
conception d'objet que je souhaite mettre en oeuvre.
j'ai besoin de creer une extension a une application en passant
par COM. les methodes de l'application ont besoins de tableaux
de types double[].
je me pose plusieurs questions puis je utiliser les arraylist ou
explicitement le type double[]?
lors d ma premiere tentative j'ai essayer de procede comme ca :

namespace ObjConn
public class Point {
// Attributs
private double x;
private double y;
private double z;
private double[] pt = new double[3];

// Methodes
public Point (double ix, double iy, double iz)
{
this.x = ix;
this.y = iy;
this.z = iz;
pt[0]=ix;
pt[1]=iy;
pt[2]=iz;
}

public Point (double ix, double iy)
{
this.x = ix;
this.y = iy;
this.z = 0;
pt[0]=ix;
pt[1]=iy;
pt[2]=0;
}
la valeur de retour de mon objet est ObjConn.Point ce qui est normal.
je ne comprend pas comment je dois faire pour avoir une methode qui me
retourne un double[]. pourriez vous m'expliquer comment je dois faire.

1 réponse

Avatar
Paul Bacelar
"polo" wrote in message
news:42904e3e$0$2446$
bonjour a tous
je debute en c# et je rencontre un probleme sur la forme et la
conception d'objet que je souhaite mettre en oeuvre.
j'ai besoin de creer une extension a une application en passant
par COM. les methodes de l'application ont besoins de tableaux
de types double[].
je me pose plusieurs questions puis je utiliser les arraylist ou
explicitement le type double[]?
lors d ma premiere tentative j'ai essayer de procede comme ca :

namespace ObjConn
public class Point {
// Attributs
private double x;
private double y;
private double z;
private double[] pt = new double[3];

// Methodes
public Point (double ix, double iy, double iz)
{
this.x = ix;
this.y = iy;
this.z = iz;
pt[0]=ix;
pt[1]=iy;
pt[2]=iz;
}

public Point (double ix, double iy)
{
this.x = ix;
this.y = iy;
this.z = 0;
pt[0]=ix;
pt[1]=iy;
pt[2]=0;
}
la valeur de retour de mon objet est ObjConn.Point ce qui est normal.
je ne comprend pas comment je dois faire pour avoir une methode qui me
retourne un double[]. pourriez vous m'expliquer comment je dois faire.





Franchement, si tu débutes, évite de faire du Marshalling (passer des objets
entre COM et .NET).

Je pense que, pour commencer, il vaut mieux que tu fasses du C++ managé pour
transférer tes structures de COM à .NET.
--
Paul Bacelar