Salut ,
je voudrais savoir si c'est possible d'inclure plusieur header dynamiquement est ne pas inclure chaque fichier un par un
et merci pour vos réponse
Salut ,
je voudrais savoir si c'est possible d'inclure plusieur header dynamiquement est ne pas inclure chaque fichier un par un
et merci pour vos réponse
non
Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
Un peu de programmation réseau ?
Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.
Votre solution à un problème semble particulièrement acrobatique.
C'est quoi votre vrai problème initial ?
Sans trop frotter ma boule de cristal , yamisaaf n'a pas dû être rigoureux lors des #include et maintenant le compilateur doit l'embêter un petit peu.
Et il pense que le compilateur va être intelligent pour soit faire l'inclusion avec le même nom que le .cpp soit en cherchant dans les .h celui qui convient ou
Mon probléme c'est que j'ai plusieurs header (voir des miliers) que je veux include tous d'un coup sans inclure un par un si y'as une possibilité ? et merci encore
Des miliers de headers ? Un petit souci d'archi ?
Ce que tu pourrais faire c'est créer un autre header qui contient uniquement tes XXXX includes. Par la suite tu n'auras plus qu'à inclure celui-ci.
Plus je connais de langages, plus j'aime le C.
Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
Un peu de programmation réseau ?
Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.
Oui, mais la réponse de @lopopmk est la meilleure.oui , mais je voudrais savoir si y'as une autre façon
Mais ce genre de besoin est généralement un symptôme de gros problèmes de conception.
Si ce n'était pas le cas, il y aurait un .h par module qui inclut les .h des sous-modules qui eux même incluent les .h des sous-sous-modules, etc...
Donc, dans une architecture modulaire, vous n'avez jamais besoin d'inclure des milliers de .h.
dans ce cas, quitte à faire un truc franchement très moche, je ferais un script python qui parse les dossiers et crée un fichier d'include
m'enfin... les includes c'est pas sensé être un objet magique et il ne faut jamais tout inclure donc bon
en comptant sur le fait qu'ils puissent tous être inclus sans générer de conflits et problèmes de compilation
Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
Un peu de programmation réseau ?
Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.
Ok merci pour vos réponse, si je peux vous expliquer mon cas c'est que j'ai plusieurs fichier header chaque fichier header contient un id et des informations donc quand je reçois un packet je doit faire un handler style si id == 1 j'utilise ce header .... et j'ai plusieur header a utiliser (+ de 4000 ficheir header donc plus de 4000 id)
Je sais comment vous travaillez, mais j'ai vraiment l'impression que c'est vraiment à l'arrache.
Si je comprends bien, vous implémentez, peu ou prou, une sorte de Design Pattern Interpreter où "id" serait un opcode d'action.
Ces 4000 fichiers, ils ne sont pas sortie du cul d'un cheval.
Personne dans l'équipe qui a généré cette tétra-chié de fichier d'en-tête n'a eu l'idée de faire un fichier d'en-tête incluant l'ensemble des autres fichiers et portant le nom "OpcodesSet.h", par exemple, juste déjà pour vérifier qu'il n'y ait pas de collision de nom entre ces putains de fichiers ???
C'est des clowns ou des stagiaires ???
Bon, pour rattraper cette connerie, c'est simple, c'est de construire ce fichier, via un pauvre programme à 2 balles qui scanne les fichiers de l'arborescence (cf. la réponse de @Bousk).
Et comme le dit @Bousk, croisez les doigts que vos stagiaires n'ont pas fait trop de conneries.
avec un shell linux (ou le "bash for windows"), tu peux meme le générer rapidement:
en supposant etre dans le dossier contenant les entetes.
Cela dit, il y a un gros probleme de découpage, ou de logique.ls -1 *.h | sed "s/\(.*\)/#include "\1"/" > ../OpCodesSet.h
S'il y a vraiment 4000 fonctions, chacune dans son coin, il peut franchement devenir utile de faire un système de plugins (avec chargement à la volée).
Mes principes de bases du codeur qui veut pouvoir dormir:Pour faire des graphes, essayez yEd.
- Une variable de moins est une source d'erreur en moins.
- Un pointeur de moins est une montagne d'erreurs en moins.
- Un copier-coller, ça doit se justifier... Deux, c'est un de trop.
- jamais signifie "sauf si j'ai passé trois jours à prouver que je peux".
- La plus sotte des questions est celle qu'on ne pose pas.
le ter nel est le titre porté par un de mes personnages de jeu de rôle
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager