Sinon, l'utilisation de telles macros génère beaucoup trop de code, et détourne l'utilité des macro. Les macro sont là pour aider à coder, pas pour essayer de faire ce que le langage ne sait pas ou ne peut faire. Il vaut mieux faire un préprocesseur sans ce cas...
De plus, il est possible d'avoir une approche générique sans passer par des macros...
spiky31
Messages postés106Date d'inscriptionmardi 11 novembre 2003StatutMembreDernière intervention11 février 2008 28 févr. 2007 à 00:45
Salut
Pour le realloc dans la version non windows j'y ai pensé et je viens de réaliser que se serait facile a faire donc je le modifirais.
Pour le do{...] while (0) je sais pas pourquoi je l'ai pas mis mais je le rajouterais si sa peut te fare plaisir ;-)
Je prevoirais le cas de removeAt(monvector,2,NULL) c'est une bonne idée.
Le createSVector(type,name,size) j'y ai meme pas pensé je le rajouterais aussi.
Quant au tri fusion, pour l'instant je vois pas trop comment faire, mais je vais y réfléchir ...
bref il y a du travail lol :-)
Merci beaucoup pour ton commentaire constructif, ca fait plaisir.
a bientot
acx01b
Messages postés280Date d'inscriptiondimanche 7 septembre 2003StatutMembreDernière intervention 8 juillet 20146 28 févr. 2007 à 00:22
salut!
tu devrais utiliser realloc plutôt que malloc pour ajouter un élément dans addElement pour la version non windows ?
pourquoi tu mets bien le do { ... } while (0) sauf dans createSVector et destroySVector ?
souvent on propose de retourner une valeur dans un pointeur, ou non si le paramètre est NULL par exemple:
removeAt(monvector,2,NULL)
ça pourrait être intéressant de prévoir ça
pourquoi tu utilises le tri à bulle et pas le quicksort, ou le tri fusion ?
pourquoi pas #define createSVector(type,name,size) ???
28 févr. 2007 à 14:10
qsort(name->elements, name->nbElements, sizeof(type), funcCompare);
Sinon, l'utilisation de telles macros génère beaucoup trop de code, et détourne l'utilité des macro. Les macro sont là pour aider à coder, pas pour essayer de faire ce que le langage ne sait pas ou ne peut faire. Il vaut mieux faire un préprocesseur sans ce cas...
De plus, il est possible d'avoir une approche générique sans passer par des macros...
28 févr. 2007 à 00:45
Pour le realloc dans la version non windows j'y ai pensé et je viens de réaliser que se serait facile a faire donc je le modifirais.
Pour le do{...] while (0) je sais pas pourquoi je l'ai pas mis mais je le rajouterais si sa peut te fare plaisir ;-)
Je prevoirais le cas de removeAt(monvector,2,NULL) c'est une bonne idée.
Le createSVector(type,name,size) j'y ai meme pas pensé je le rajouterais aussi.
Quant au tri fusion, pour l'instant je vois pas trop comment faire, mais je vais y réfléchir ...
bref il y a du travail lol :-)
Merci beaucoup pour ton commentaire constructif, ca fait plaisir.
a bientot
28 févr. 2007 à 00:22
tu devrais utiliser realloc plutôt que malloc pour ajouter un élément dans addElement pour la version non windows ?
pourquoi tu mets bien le do { ... } while (0) sauf dans createSVector et destroySVector ?
souvent on propose de retourner une valeur dans un pointeur, ou non si le paramètre est NULL par exemple:
removeAt(monvector,2,NULL)
ça pourrait être intéressant de prévoir ça
pourquoi tu utilises le tri à bulle et pas le quicksort, ou le tri fusion ?
pourquoi pas #define createSVector(type,name,size) ???
a+