Séparer fonction du code c++

Résolu
Joey16
Messages postés
356
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
3834
Date d'inscription
dimanche 12 décembre 2004
Statut
Modérateur
Dernière intervention
20 octobre 2021
- 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
3834
Date d'inscription
dimanche 12 décembre 2004
Statut
Modérateur
Dernière intervention
20 octobre 2021
124
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
356
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
356
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
3834
Date d'inscription
dimanche 12 décembre 2004
Statut
Modérateur
Dernière intervention
20 octobre 2021
124
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
356
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
3834
Date d'inscription
dimanche 12 décembre 2004
Statut
Modérateur
Dernière intervention
20 octobre 2021
124
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