_gwada_
Messages postés5Date d'inscriptionvendredi 4 juin 2004StatutMembreDernière intervention11 juin 2004
-
4 juin 2004 à 18:45
razily
Messages postés250Date d'inscriptionlundi 9 mars 2009StatutMembreDernière intervention 4 décembre 2013
-
14 mars 2010 à 01:41
Je comprend plus rien et ce c++ commence a me rendre chevre.... :x
j'ai editer mes class avec ClassBuilder puis generer le code depuis.
sans rien toucher je compile le projet sans probleme.
Pour effectuer un teste j'ai inclu ds le main une instance de class et la 3 erreur de ce type.
[Lieur Erreur] Unresolved external 'Vehicule::~Vehicule()' referenced from C:\DOCUMENTS AND SETTINGS\TITOU\BUREAU\C++ 1.0\MAIN.OBJ
[Lieur Erreur] Unresolved external 'Vehicule::Vehicule(char *, int)' referenced from C:\DOCUMENTS AND SETTINGS\TITOU\BUREAU\C++ 1.0\MAIN.OBJ
[Lieur Erreur] Unresolved external 'Vehicule::getNbKmActuel()' referenced from C:\DOCUMENTS AND SETTINGS\TITOU\BUREAU\C++ 1.0\MAIN.OBJ
voila la partie de code concerner :
*******
* main *
*******
//---------------------------------------------------------------------------
#include
#include <conio.h>
#include <stdio.h>
#include "Exemple.h"
main ()
{
Vehicule V1("CHAWW34",10024);
cout << " Le Km est de : " << V1.getNbKmActuel() << endl;
getch ();
}
********************************************************
Le .h
********************************************************
/*******************************************************************************
* File: Vehicule.h
* Creation date: June 04, 2004 15:03
* Author: ClassBuilder
* XXXX
* Purpose: Declaration of class 'Vehicule'
*
* Modifications: @INSERT_MODIFICATIONS(* )
* June 04, 2004 15:09 Leon-Hans
* Updated return type of method 'getUnEntretien'
* June 04, 2004 15:03 toto
* Added method 'DestructorInclude'
* Added method 'ConstructorInclude'
* Added method 'getUnEntretien'
* Added method 'getNbKmActuel'
* Added method 'getNbEntretiens'
* Added method 'ajouteEntretien'
* Added method '~Vehicule'
* Added method 'Vehicule'
* Added member 'nbKmActuel'
* Added member 'numImma'
*
* Copyright 2004, XXXXX
* All rights are reserved. Reproduction in whole or part is prohibited
* without the written consent of the copyright owner.
*
\******************************************************************************/
#ifndef _VEHICULE_H
#define _VEHICULE_H
********************************************************
Le .cpp
********************************************************
/*******************************************************************************
* File: Vehicule.cpp
* Creation date: June 04, 2004 15:03
* Author: ClassBuilder
* XXXX
* Purpose: Method implementations of class 'Vehicule'
*
* Modifications: @INSERT_MODIFICATIONS(* )
* June 04, 2004 15:09 Leon-Hans
* Updated code of method 'getUnEntretien'
* Updated return type of method 'getUnEntretien'
* June 04, 2004 15:03 toto
* Added method 'DestructorInclude'
* Added method 'ConstructorInclude'
* Added method 'getUnEntretien'
* Added method 'getNbKmActuel'
* Added method 'getNbEntretiens'
* Added method 'ajouteEntretien'
* Added method '~Vehicule'
* Added method 'Vehicule'
* Added member 'nbKmActuel'
* Added member 'numImma'
*
* Copyright 2004, XXXXX
* All rights are reserved. Reproduction in whole or part is prohibited
* without the written consent of the copyright owner.
*
\******************************************************************************/
//@START_USER1
//@END_USER1
// Master include file
#include "Exemple.h"
//@START_USER2
//@END_USER2
/*@NOTE_48
Constructor method.
*/
Vehicule::Vehicule(char numImma_[10], int nbKmActuel_) //@INIT_48
/*: numImma(numImma_)
, nbKmActuel(nbKmActuel_) */
{//@CODE_48
//ConstructorInclude();
strcpy(numImma,numImma_);
nbKmActuel=nbKmActuel_;
// Put in your own code
}//@CODE_48
ymca2003
Messages postés2070Date d'inscriptionmardi 22 avril 2003StatutMembreDernière intervention 3 juillet 20067 5 juin 2004 à 11:21
Pas du tout, le fait d'inclure "exemple.h" dans "main.cpp" n'indique en rien le fait d'inclure également "vehicule.cpp" lors de l'édition de lien, à moins que "exemple.h" fasse #include "vehicule.cpp" ce qui n'est pas du tout conseillé comme méthode.
si aucun fichier ne fait #include "vehicule.cpp" ( ce qui normalement doit être le cas) il faut compiler les 2 cpp et les lier ensemble, soit en créant un makefile soit en ajoutant explicitement les 2 fichiers .cpp au projet.
_gwada_
Messages postés5Date d'inscriptionvendredi 4 juin 2004StatutMembreDernière intervention11 juin 2004 5 juin 2004 à 12:19
Je vien de regarder et Exemple.h inclu les autres fichier .h mais pas du tout les cpp, je les rajoute donc dans exemple.h.
Merci du conseil.
une fois les lien .cpp rajouter ds exemple.h j'ai plein d'erreur du type suivant, si une fonction d'une classe x retourne un objet de la classe y, donc voila la nouvelle mission....
Ce que je comprend pas c'est que les logiciel de modelisation uml ne genere pas mieu le code....
Je suis obliget de reopasser derriere et n'etant pas tres forts, c'est pas le top....
Connait tu un logiciel qui focntionne bien pour ecrire le diagrmame uml et generer le code svp....
En tout cas merci beaucoup de ton aide
Vous n’avez pas trouvé la réponse que vous recherchez ?
ymca2003
Messages postés2070Date d'inscriptionmardi 22 avril 2003StatutMembreDernière intervention 3 juillet 20067 5 juin 2004 à 22:38
en fait, il faut faire attention à l'ordre d'inclusion des fichiers. le .h de la classe y doit être inclu avant la définition de la class x
par exemple, dans le x.h :
#include "y.h"
class x
{
// utilisation possible de la classe y
};
cependant il y a des cas où on se mord la queue par exemple si la classe x utilise la classe y et vice versa, dans ce cas il faut ajouter une ligne disant que la classe y sera défini plus tard :
x.h devient ;
class y;
class x
{
// utilisation possible de la classe y