Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1666 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  Complilation séparée et classes

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Complilation séparée et classes

n°1330248
oc_alex86
Posté le 22-03-2006 à 15:02:20  profilanswer
 

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
mood
Publicité
Posté le 22-03-2006 à 15:02:20  profilanswer
 

n°1330252
Taz
bisounours-codeur
Posté le 22-03-2006 à 15:06:59  profilanswer
 

juste la déclaration.

n°1330256
oc_alex86
Posté le 22-03-2006 à 15:08:19  profilanswer
 

merci pour ta réponse.
Et les attributs aussi je pense ?

n°1330257
_darkalt3_
Proctopathe
Posté le 22-03-2006 à 15:08:44  profilanswer
 

oui

n°1330264
oc_alex86
Posté le 22-03-2006 à 15:12:18  profilanswer
 

merci

n°1330575
oc_alex86
Posté le 22-03-2006 à 21:27:01  profilanswer
 

heu, encore une question car ça ne marche pas chez moi :
que faut il mettre dans le .cc ?
tout ?

n°1330585
skelter
Posté le 22-03-2006 à 21:38:41  profilanswer
 

juste les définitions et tu inclus .h

n°1330587
oc_alex86
Posté le 22-03-2006 à 21:42:15  profilanswer
 

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


Message édité par oc_alex86 le 22-03-2006 à 21:43:11
n°1330590
skelter
Posté le 22-03-2006 à 21:44:38  profilanswer
 

ca c'est la déclaration, uniquement dans le .h

n°1330592
oc_alex86
Posté le 22-03-2006 à 21:48:06  profilanswer
 

là j'ai les attributs qui sont indiqués comme non déclarés

mood
Publicité
Posté le 22-03-2006 à 21:48:06  profilanswer
 

n°1330598
skelter
Posté le 22-03-2006 à 21:54:26  profilanswer
 

montres le code du .h et du .cc
 
tu as pensé à inclure le .h avant les définition dans le .cc ?

n°1330601
_darkalt3_
Proctopathe
Posté le 22-03-2006 à 21:59:08  profilanswer
 

exemple
 
maclasse.h

Code :
  1. #ifndef maclasse_h_
  2. #define maclasse_h
  3. class maclasse
  4. {
  5. public:
  6.    maclasse();
  7. };
  8. #endif


 
maclasse.cpp:

Code :
  1. #include "maclasse.h"
  2. maclasse::maclasse()
  3. {
  4. }

n°1330605
++fab
victime du syndrome IH
Posté le 22-03-2006 à 22:08:29  profilanswer
 

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 )


Message édité par ++fab le 22-03-2006 à 22:08:58
n°1330607
skelter
Posté le 22-03-2006 à 22:11:06  profilanswer
 

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

n°1330612
++fab
victime du syndrome IH
Posté le 22-03-2006 à 22:17:09  profilanswer
 

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.
 
 

n°1330618
skelter
Posté le 22-03-2006 à 22:28:00  profilanswer
 

ok, c'est vrai que c'est plutot une définition


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  Complilation séparée et classes

 

Sujets relatifs
[RESOLU] probleme avec le lower_bound d'un vector de classesError variable + cours sur les classes.
difficulté à appliquer les classes avec un code cssCharger des classes extérieures (genre plugins)
classes MySQLi sur free.fr[ECLIPSE] comment importer des classes
QT3 et classes (débutant)[Java] maj du défilement d'un jtextarea utilisé par 2 classes
Documentation des classes .net[Débutante] Découpage logique des classes ?
Plus de sujets relatifs à : Complilation séparée et classes


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR