Séparer fonction du code c++

Résolu
Joey16 Messages postés 366 Date d'inscription mardi 12 mars 2013 Statut Membre Dernière intervention 21 octobre 2019 - 27 déc. 2014 à 21:06
cptpingu Messages postés 3837 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 28 mars 2023 - 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

6 réponses

cptpingu Messages postés 3837 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 28 mars 2023 123
29 déc. 2014 à 20:05
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
0
Joey16 Messages postés 366 Date d'inscription mardi 12 mars 2013 Statut Membre Dernière intervention 21 octobre 2019
1 janv. 2015 à 15:29
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?
0
Joey16 Messages postés 366 Date d'inscription mardi 12 mars 2013 Statut Membre Dernière intervention 21 octobre 2019
1 janv. 2015 à 15:52
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 ?
0
cptpingu Messages postés 3837 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 28 mars 2023 123
Modifié par cptpingu le 1/01/2015 à 17:29
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
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Joey16 Messages postés 366 Date d'inscription mardi 12 mars 2013 Statut Membre Dernière intervention 21 octobre 2019
11 janv. 2015 à 21:15
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
0
cptpingu Messages postés 3837 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 28 mars 2023 123
11 janv. 2015 à 21:21

-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
0
Rejoignez-nous