30

Zephyr :
- quand je vais rendre le projet, il faudra que je revienne en arrière pr remettre le vrai malloc

Qu'est-ce qui te gêne dans le fait d'utiliser systématiquement ton propre wrapper, même si ce sera simplement un alias de malloc dans la release finale ? Perso si je devais noter un projet j'enlèverais pas des points à cause du fait qu'il y a une infrastructure de debug, au contraire triso (maintenant peut-être que vous êtes notés sur des critères débiles, je sais pas)

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

31

parceque quand je vais rendre c'est supposé être une release "finale", donc stable, donc j'ai pas envie d'y laisser tout ce qui m'aura servi pour le debug (après c'est ma façon de voir les choses, t'en penses ce que tu veux hein ^^)
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

32

Je sais pas quel IDE tu utilises, mais moi, cet été, quand j'utilisais Eclipse pour faire du java, je pouvais faire un clic droit sur une fonction et "refactor", ce qui me remplaçait tous les appels à cette fonction par ce que je voulais. Ensuite, tu compiles, tu testes, et un nouvel appel à refactor te remet tout en ordre. Pas besoin de "sed nianiania" ... smile
avatar
I'm on a boat motherfucker, don't you ever forget

33

en sed ça prendrait une ligne pour tout remplacer dans tous les fichiers, mais j'ai pas envie de modifier les sources, c'est une contrainte et efence prouve qu'elle n'est pas obligatoire

(bon sinon vous faites chier avec vos "pkoi tu veux faire comme ça ?", c'est pas la question grin)
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

34

(ben c'était juste que modifier les sources me paraissait moins "contraignant" que télécharger, installer, comprendre et utiliser une nouvelle librairie, mais bon, tu fais comme tu veux hein tongue)
avatar
I'm on a boat motherfucker, don't you ever forget

35

vi mais le but c'est pas de me faire chier le moins possible cette fois-ci, c'est d'apprendre à faire un truc réutilisable :]
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

36

En C, il y a un truc très bien, ce sont les macros...

dans Visual Studio: #define malloc(s) __malloc_dbg((s), __FILE__, __LINE__)- soit la méthode un peu barbare mais efficace, trouvée
, __FILE__, __LINE__) #else #define MY_MALLOC(s) malloc(s) #endif
- soit, tu passes par ta propre macro que tu emploies tout le temps:#ifdef _DEBUG
#define MY_MALLOC(s) my_malloc_dbg((s)


Mon conseil, c'est d'utiliser la seconde solution dans la mesure du possible. Mais pour un gros projet déjà commencé, il est toujours possible de se rabattre sur la première.

Edit: Corrigé la macro MY_MALLOC car j'adhère complètement à ce que dit spectras (j'avais oublié, c'est tout)
+ Rajouté des parenthèses
avatar
Maintenant j'ai la flemme de garder une signature à jour sur ce site. Je n'ai même plus ma chaîne Exec sous la main.

37

Les macros, c'est mal.
Elles devraient toujours au moins être notées en majuscules histoire de dire "attention, macro, prenez garde"

38

./36 > oui enfin le seul "petit" problème c'est que ça ne correspond pas du tout à la contrainte "aucune modification des sources du projet" wink
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

39

Et :
[code]-Dmalloc(s)=__malloc_dbg((s),__FILE__,__LINE__)[/code]
?
avatar
Maintenant j'ai la flemme de garder une signature à jour sur ce site. Je n'ai même plus ma chaîne Exec sous la main.

40

c'est pas mal, mais ça va me faire un "implicit declaration" par ligne je suppose ^^
(j'ai pas encore rencontré de cas où ça pose vraiment problème, mais si je me trompe pas il va supposer que la fonction retourne un int, et suivant l'archi j'ai peur que ça fasse n'importe quoi :/)
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

41

c'est vrai, on ne peut pas forcer à inclure un header: ton seul choix est d'en modifier un...

Si ton programme utilise les autotools, tu peux toujours modifier le header généré (autoconf.h)... en faisant un script qui y ajoute les lignes (ou l'inclusion d'un header perso) dont tu as besoin...
avatar
Maintenant j'ai la flemme de garder une signature à jour sur ce site. Je n'ai même plus ma chaîne Exec sous la main.

42

yep il utilise, c'est pas spécialement propre comme solution mais si ça marche, pourquoi pas... ^^
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)