Passage de tableaux en parametre de function
Bonjour,
je r�alise en ce moment un petit programme de d�monstration mettant en avant diff�rent fa�on d��crire une fonction permettant de passer un tableau en param�tre.
Voici quelque unes des m�thodes que je veux mettre dans ma desmonstration:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
//Par ref
// réalise une verification static sur les tailles à la compilation
void getParamArrayVerifStatic( double (&oarray)[3]);
// pas de verification static sur les tailles à la compilation
void getParamArrayWithoutVerfiStatic( double oarray[3]);
//Par pointeur
// réalise une verification static sur les entrées à la compilation
void getParamArrayPtrVerifStatic( double (*oarray)[3] )
// voici la method posant probléme
void getParamArrayPtrWithoutVerfiStatic( double *oarray[3] ) |
j'essaye ensuite diff�rent type en entr�e pour voir les v�rifications statiques sur le code.
Code:
1 2 3 4 5 6 7 8
|
//declaration du type a teste
double Array3[3] = {3,4,5};
getParamArrayWithoutVerfiStatic(Array3) //"OK Compil but not Validate by compilation")
getParamArrayVerifStatic( Array3 ); //"OK Compil and Validate by compilation")
getParamArrayPtrVerifStatic( &Array3 ); //"OK Compile but not Validate by compilation")
getParamArrayPtrWithoutVerfiStatic( &Array3 ); //"KO Compile ,cannot convert parameter 1 from 'double (*)[3]' to 'double *[]'") |
dans le dernier cas getParamArrayPtrWithoutVerfiStatic impossible de trouver une moyen de caster mon parametre de type double (*)[3] vers le type 'double *[]'.
Il doit bien y avoir une moyen vu que au final les deux types sont des pointeurs sur un tableaux d'�l�ment.