Voila, je viens de quitter mon ancien compilateur C++ pour me mettre sur Visual C++ mais je patoge un peu.
Première chose bizarre que j'ai remarqué c'est pourquoi il na'ccepte âs les include de .cpp ?
PAr exemple : #include "Perso.cpp"
Voila, je viens de quitter mon ancien compilateur C++ pour me mettre sur Visual C++ mais je patoge un peu.
Première chose bizarre que j'ai remarqué c'est pourquoi il na'ccepte âs les include de .cpp ?
PAr exemple : #include "Perso.cpp"
Il ne faut jamais inclure de .cpp, seulement des en-têtes.
Ceci-dit, même si c'est un erreur, l'inclusion en elle-même devrait tout de même passer.
Mieux que SDL : découvrez SFML
Mes tutoriels 2D/3D/Jeux/C++, Cours et tutoriels C++, FAQ C++, Forum C++.
Oui mais si je fais un objet, je le déclare dans un .h et je définis ces méthodee dans un .ccp. Je fais comment pour inclkure l'objet?
Ca ne marche pas comme ça. Tu devrais revoir tes bases, concernant l'organisation des fichiers.
http://c.developpez.com/faq/cpp/?pag...ASS_header_cpp
Mieux que SDL : découvrez SFML
Mes tutoriels 2D/3D/Jeux/C++, Cours et tutoriels C++, FAQ C++, Forum C++.
D'accord, ça je l'ai lu plusieurs fois mais si avec le .cpp on inclu le .h, alors dans le fichier principal il faut inclure le .cpp.
Par exemple : si le code principale est stocké dans le fichier main.cpp, il y a un objet déclaré dans le fichier Perso.h et ses méthodes son écrites dans Perso.cpp et dans Perso.cpp il y a #include "Perso.h", alors dans le main.cpp il doit y avoir #include "Perso.cpp".
N'est-ce pas ?
nonEnvoyé par Azharis
tu as seulement besoin de renseigner les .h. ainsi le code appelant a les déclarations de classes et de fonctions. pour ce qui est de savoir ce que font ces fonctions (implémentées dans le .cpp) le compilateur se débrouille tout seul.
il n'y a que pour les templates que tu peux éventuellement inclure le .cpp dans le .h (situation inverse à la normale, voir FAQ)
J'ai pas bien compris mais, pour reprendre mon exemple précédent, il faut mettre toutes les définitions des méthodes de l'objet dans main.cpp, et si y'a 5 objets, on fait 5 .h et on bourre le main.cpp, c'est ça?
Non.
1 couple .h / .cpp par classe (habituellement), on met dans le .h la définition de la classe et son implémentation dans le .cpp. Ensuite pour utiliser une classe, on inclut simplement son .h ; l'éditeur de lien se chargeant de trouver comme un grand le corps des fonctions dans les fichiers compilés.
Mieux que SDL : découvrez SFML
Mes tutoriels 2D/3D/Jeux/C++, Cours et tutoriels C++, FAQ C++, Forum C++.
Alléluia, voila quelque chose de clair et précis.
Un grand merci.
Désolé mais dans ce cas-la, à quoi ca sert d'inclure le .h dans le .cpp correspondant ?
Si tu implémentes des fonctions, il faut bien que le compilo sache desquelles il s'agit.
Mieux que SDL : découvrez SFML
Mes tutoriels 2D/3D/Jeux/C++, Cours et tutoriels C++, FAQ C++, Forum C++.
Partager