[VC++][MFC][DLL]retourner un tableau
ouais je sais ça peut paraître con, et mon erreur doit l'être aussi mais là je ne vois plus rien du tout et donc, j'en appel à votre bon coeur....mais surtout à votre compétence en C++ !
environnement: Windows XP PRo SP2, VSC++6, Codage d'une DLL
alors voilà:
la fonction suivante reçoit plusieurs paramètres. Les 2 derniers sont des tableaux dont la taille peut varier d'un appel à l'autre..bref ces deux tableaux sont vides et doivent être remplis par cette fonction.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
double CalcFilmCont(char *fetude, usint nind, double *vspots, int nbspots, char *dcbl, double *contacts, int *poids)
{
//Déclarations
double *Pbci;
//initialisation
Pbci = new double[nind];
contacts = new double[nind];
// traitement qui rempli Pbci
//je récupère les valeurs de Pbci dans contacts par la boucle suivante
for(i=0;i<nind;i++)
{
contacts[i] = Pbci[i];
}
return 0;
} |
Cette fonction est appelée par le point d'entrée suivant de ma DLL:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
extern "C" __declspec(dllexport)
double calc_filmcontact(char *fetude, usint nind, double *vspots, int nbspots, char *dcbl, double *contacts, int *poids)
{
double ret=0;
AFX_MANAGE_STATE(AfxGetStaticModuleState());
TRY
{
ret = CalcFilmCont(fetude,nind,vspots,nbspots,dcbl, contacts,poids);
}
END_TRY
return ret;
} |
Et le problème c'est qu'une fois de retour dans le programme appelant, je n'ai absolument rien dans le tableau contacts si ce n'est de jolis petits zéros .....
merci de votre aide à tous,
Ben