Séparer fonction du code c++ [Résolu]

Messages postés
354
Date d'inscription
mardi 12 mars 2013
Statut
Membre
Dernière intervention
6 juillet 2017
- - Dernière réponse : cptpingu
Messages postés
3821
Date d'inscription
dimanche 12 décembre 2004
Statut
Modérateur
Dernière intervention
28 août 2019
- 11 janv. 2015 à 21:21
Bonjour,
je suis novice en programmation (c++) et dans le mini démineur en console que je suis en train de coder j'ai beaucoup de fonctions et dans le fichier main.cpp ça commence à faire lourd est-il possible d'écrire toutes les fonctions dans un autre fichier et l'inclure à mon main ?
bonne soirée
Afficher la suite 

6 réponses

Messages postés
3821
Date d'inscription
dimanche 12 décembre 2004
Statut
Modérateur
Dernière intervention
28 août 2019
85
0
Merci
Bonjour.

Bien évidemment. Tu as un système d'include en C++, via la commande #include. Je t'invite à regarder des tutoriaux/exemples sur le net.

__________________________________________________________________________________________________

Améliorez votre expérience CodeS-SourceS avec ce plugin:
http://codes-sources.commentcamarche.net/forum/affich-10000111-plugin-better-cs-2#cptpingu-signature
Commenter la réponse de cptpingu
Messages postés
354
Date d'inscription
mardi 12 mars 2013
Statut
Membre
Dernière intervention
6 juillet 2017
0
Merci
Bonjour, je connais la commande #include, ça fonctionne jusqu'à ce que j'utilise un "cout", un "endl".. dans ma fonction, idem quand j'utilise un type que j'ai créé, le compilateur me dit :
cout was nos declared in this scope
endl was not declared in this scope
Grille was not declared in this scope
Je dois inclure quoi à part le fichier .h dans le main?
Commenter la réponse de Joey16
Messages postés
354
Date d'inscription
mardi 12 mars 2013
Statut
Membre
Dernière intervention
6 juillet 2017
0
Merci
Je viens de trouver que je devais faire #include <string>, par contre j'ai une autre erreur, il me dit
multiplie declaration of..
c'est quoi le problème ?
Commenter la réponse de Joey16
Messages postés
3821
Date d'inscription
dimanche 12 décembre 2004
Statut
Modérateur
Dernière intervention
28 août 2019
85
0
Merci
Il faudrait que je vois tout, pour te dire...

Déjà, plusieurs choses:
- Evite les using namespace. Voir: http://0217021.free.fr/portfolio/axel.berardino/articles/bon-usage-using-namespace
- L'extension d'un header C++ est .hh (ou .hpp) et non .h (pour le C).
- Il faut mettre une "guarde" dans ton header pour éviter les soucis d'inclusions multiples (source de ton erreur).
- Il faut inclure dans chacun de tes fichiers, tout ce qui est nécessaire, et pas seulement dans un seul des fichiers.

__________________________________________________________________________________________________

Améliorez votre expérience CodeS-SourceS avec ce plugin:
http://codes-sources.commentcamarche.net/forum/affich-10000111-plugin-better-cs-2#cptpingu-signature
Commenter la réponse de cptpingu
Messages postés
354
Date d'inscription
mardi 12 mars 2013
Statut
Membre
Dernière intervention
6 juillet 2017
0
Merci
merci pour cette précision, je m'y retrouve un peu mieux à force de pratiquer!
-Dans le Fonction.cpp => je mets un #include "Fonction.h"
-Dans le main => #include "Fonction.cpp"
Mais j'ai une toute autre question, en fait quand je fais un programme, il fonctionne bien sur mon pc, mais quand je l'essaie sur un autre pc, il me dit qu'il manque des DLLs! Je les ai trouvées, mises dans le même dossier mais il me dit qu'il y a quelque chose d'introuvable (je me souviens plus de quoi) dans le bibliothèque dynamique..
J'ai bien cherché mais sans succès..
merci
Commenter la réponse de Joey16
Messages postés
3821
Date d'inscription
dimanche 12 décembre 2004
Statut
Modérateur
Dernière intervention
28 août 2019
85
0
Merci

-Dans le Fonction.cpp => je mets un #include "Fonction.h"

Préfère .cc et .hh ou .hpp et .hpp, mais le principe c'est ça.


-Dans le main => #include "Fonction.cpp"

Tu inclus *toujours*" des headers jamais des fichiers de code ! Donc tu dois inclure le header de "Fonction" et non le code.


Mais j'ai une toute autre question, en fait quand je fais un programme, il fonctionne bien sur mon pc, mais quand je l'essaie sur un autre pc, il me dit qu'il manque des DLLs!

Je ne connais pas assez Windows pour régler ce problème ci. Normalement, il me semble que mettre les dll à côté du binaire suffit. Ou alors compiler en statique (je ne peux pas non plus t'aider pour faire cela sous Windows).

__________________________________________________________________________________________________

Améliorez votre expérience CodeS-SourceS avec ce plugin:
http://codes-sources.commentcamarche.net/forum/affich-10000111-plugin-better-cs-2#cptpingu-signature
Commenter la réponse de cptpingu