Complilation séparée et classes - C++ - Programmation
Marsh Posté le 22-03-2006 à 21:27:01
heu, encore une question car ça ne marche pas chez moi :
que faut il mettre dans le .cc ?
tout ?
Marsh Posté le 22-03-2006 à 21:42:15
merci pour ta réponse
et le début :
class NomClasse {..};
faut le mettre ?
Car j'ai un message d'erreur : redefinition de class NomClass
Marsh Posté le 22-03-2006 à 21:44:38
ReplyMarsh Posté le 22-03-2006 à 21:48:06
là j'ai les attributs qui sont indiqués comme non déclarés
Marsh Posté le 22-03-2006 à 21:54:26
montres le code du .h et du .cc
tu as pensé à inclure le .h avant les définition dans le .cc ?
Marsh Posté le 22-03-2006 à 21:59:08
exemple
maclasse.h
Code :
|
maclasse.cpp:
Code :
|
Marsh Posté le 22-03-2006 à 22:08:29
skelter a écrit : ca c'est la déclaration, uniquement dans le .h |
Non. C'est la définition. Une classe peut avoir plusieurs définitions dans des TU différentes, qui doivent être exactement la même. (ODR 3.2 )
Marsh Posté le 22-03-2006 à 22:11:06
définition c'est le terme ? pour moi une définition doit etre unique et une déclarétion peut etre présente dans plusieurs TU
Marsh Posté le 22-03-2006 à 22:17:09
skelter a écrit : définition c'est le terme ? |
class Foo; // declaration
class Bar {}; // definition
Citation : pour moi une définition doit etre unique |
les classes, fonctions inline, templates, enum, etc ont le droit d'avoir plusieurs définitions -- les mêmes -- au sein d'un programme, une par TU.
Marsh Posté le 22-03-2006 à 15:02:20
Bonjour,
lors d'une compilation séparée, que faut il mettre dans le .h lorsqu'il s'agit de classes ?
toute la classe ?
seulement les prototypes des méthodes ?
Message édité par oc_alex86 le 22-03-2006 à 21:26:19