CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

[C++] Programmation modulaire.

Coffre
Coffre
Niveau 23
28 mai 2011 à 17:24:04

Salut. :o))

Je suis en train d'apprendre le C++ et une chose me chiffonne. :noel:
J'utilise CodeBlocks, et j'essaye la programmation modulaire. Seulement ça ne marche pas comme prévu.

J'ai 3 fichiers :
- Personnage.cpp ( http://pastebin.com/3tqgRe9f )
- Personnage.h ( http://pastebin.com/485v4msC )
- main.cpp ( http://pastebin.com/WMvgUcNU )

( Oui l'attribut est déclaré public mais pour le moment c'est juste la modularité que j'essaye de faire marcher... :p )

Mon code ne compile pas avec pour erreurs : http://pastebin.com/mfCnswW8

Ce que je comprends pas puisqu'a priori, les fonctions sont bien définies dans Personnage.cpp.

Mais ce qui me chiffonne surtout, c'est que ça marche nickel lorsque, dans mon main, je place un #include "Personnage.cpp" (ce qui n'a visiblement rien à faire là, on inclut jamais des fichiers source, mais le compilo semble préférer...).

Ma question c'est alors : est-ce que c'est normal que je sois condamné à inclure des .cpp dans mes projets et passer pour quelqu'un qui n'a rien compris à la modularité ( ce qui est peut-être réellement le cas :noel: ) ?

Merci d'avance. :noel:

tbop2
tbop2
Niveau 10
28 mai 2011 à 17:55:45

Bizarre mais en premier lieu je me suis dit "c'est trivial" et au bout de 30 secondes je n'ai pas trop vu ce qui clochait. Es-tu sûr d'avoir intégré tous tes fichiers utilisés au sein de ton projet codeblocks? Dans le cas contraire ils ne seront pas compilés et donc le compilateur va crier.

Sinon c'est pas trop moche ton programme pour un débutant ça va. Mis à part "getVie", faut faire un choix soit on écrit tout en anglais soit on écrit tout en français... mais les deux en même temps c'est moche !

Le langage de base dans la programmation c'est l'anglais, je conseille toujours aux "jeunes qui débutent" d'en profiter pour se mettre à l'anglais et fréquenter un peu des forums de programmation anglophones. Et puis après tout TOUS les langages de programmations sont écrits en anglais eux même, moi ça me posera toujours des problèmes d'esthétismes les deux mélangés (encore les commentaires c'est un autre problème à la limite).

Aldebran
Aldebran
Niveau 10
28 mai 2011 à 17:56:49

J'ai sûrement loupé quelque chose mais je ne vois rien d'anormal :(
Tes fichiers Personnage.h, Personnage.cpp et main.cpp sont ils bien dans le même dossier ? As-tu bien inclus tout ces fichiers dans le projet codeblocks ?

Aldebran
Aldebran
Niveau 10
28 mai 2011 à 17:57:17

Arf j'ai été devancé :)

Coffre
Coffre
Niveau 23
28 mai 2011 à 18:42:48

Ah j'ai trouvé l'erreur ! C'était bien un problème d'intégration de fichiers.
http://sournoishack.com/uploads/codeblocks.png
Ces cases n'étaient pas cochées par défaut ( va savoir pourquoi, le fait est que désormais elles le seront :p ).

Sinon j'essaye autant que possible de coder en Anglais ( c'est pas mon premier langage, j'ai été plutôt habitué au Java jusque là, d'où cette méthode getVie qui a le look de tous les getters de l'API Java :o)) ). C'est-à-dire que ce projet était juste bon pour tester la syntaxe C++ avant de finir dans ma corbeille. :o))

Coffre
Coffre
Niveau 23
28 mai 2011 à 18:43:03

Ah et merci. :p

Sous forums
  • Aide à l'achat Mac
  • Macintosh
  • Création de Jeux
  • Programmation
  • Création de sites web
  • Linux
  • Internet
  • Steam Deck
  • Hardware
La vidéo du moment