begin process at 2012 05 29 17:31:06
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Divers

 > 

Divers

 > 

Probleme d'inclusion de fichier (.hpp Vs .cpp)?


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Probleme d'inclusion de fichier (.hpp Vs .cpp)?

lundi 22 décembre 2008 à 13:20:01 | Probleme d'inclusion de fichier (.hpp Vs .cpp)?

ano2345

Bonjour a tous,

Je suis en train de developper sous Dev-C++ 4.9.9.2 une classe template MyVector basee sur la classe vector de telle maniere que je puisse y ajouter mes propres operations standards telle que generer un vecteur de moyennes glissantes a partir d'un vecteur initial.
Le fichier MyVector.hpp declare la classe MyVector, le fichier MyVector.cpp definit les fonctions de la classe MyVector, et le fichier TestMyVector.cpp permet de tester l'utilisation de cette classe
J'ai 2 problemes que je n'ai pas si j'utilise une classe non template alors qu'il apparaissent avec la classe template:

1) Directive #include "MyVector.hpp" dans TestMyVector.cpp:
dans le fichier TestMyVector.cpp, j'ai une erreur de linkage quand j'utilise la directive #include "MyVector.hpp" Cette erreur disparait lorsque j'utilise a la place #include "MyVector.cpp" a la place. Dans tous les exemples que j'ai vus jusqu'a present, le fichier qui sert a tester la classe inclut toujours la declaration (.hpp) et non la definition (.cpp) de la classe. Quelqu'un peut-il m'expliquer pourquoi ca ne marche pas quand j'utilise une classe template (encore une fois ca marchait quand la classe n'etait pas template)

2) overloading de l'operateur <<:  
L'overloading de << fonctionnait parfaitement quand la classe n'etait pas template. Mais quand je passe a une classe template, j'obtiens egalement une erreur de linkage.

Je n'ai malheureusement pas reussi a copier les 3 fichiers dans ce mail. Est-ce que quelqu'un aurait malgre tout une idee de la source de ces 2 problemes et pourquoi passer d'une classe non template (contenant un membre vector<float>) a une classe template (contenant un membre template<class T> vector<T>) pose probleme?

Merci d'avance pour votre aide,
Ano
lundi 29 décembre 2008 à 11:52:44 | Re : Probleme d'inclusion de fichier (.hpp Vs .cpp)?

exar

Membre Club
1. Ton implémentation doit être dans le fichier d'interface, à moins que ton compilo ne supporte la clause "export", mais je n'en connais aucun qui le fait...
2. Implémente ton opérateur << dans l'interface de la classe.

Ainsi, ça devrait fonctionner.
Bon courage !


Cette discussion est classée dans : fichier, classe, template, cpp, myvector


Répondre à ce message

Sujets en rapport avec ce message

Template et fichier => urgent svp [ par najla1986 ] J'ai une classe qui a comme variable un template. Je dois mémoriser cette classe dans un fichier. Le template demande-t-il une technique spéciale ou s découpage de classe - instanciation template [ par vdox ] Bonjour, j'ai créé une classe template. De façon très classique, la déclaration est dans le .hpp et la définition des fonctions dans le cpp. J'aimerai copier map dans un fichier [ par fatenbenhamadi ] bonjour, j'ai une map avec une clé qui est une classe "personne" et puis un attribut qui est l'email map la classe personne contient un nom, prenom e [C++] Débutant [ par Arnold59 ] Bonjour,Je développe parfois en Java (Java version JDK 1.6 update 7), je souhaites apprendre le C++, et j'ai acheté le livre "Le langage c++" de l'édi héritage d'une template classe comme vector [ par Urukai1 ] bonjourje suis un newbie en cpp, et j'ai fait beaucoup de javaje souhaite faire une classe qui herite par exemple de la classe vector avec template,le AXIS C++ / VS 2003 / WebServices [ par CSharpJSharp ] Bonjour tout le monde ;J'utilise AXIS C++ (http://ws.apache.org/axis/cpp/download.html) qui me génère le source C++ (.cpp et .hpp) à partir d'un fichi Liste comportant une classe template [ par horcks ] Bonjour, J'aurais voulu savoir s'il est possible de créer une liste contenant une classe template. Je m'explique : Voici le code (écourté) du template librairies par défaut [ par NitRic ] J'ai modifié un fichier sans faire de sauvegarde et j'aimerais récupérer les données manquantes Le fichier en question est « C:\Program Files (x86)\MS Template et héritage [ par ndubien ] Bonjour, Je souhaiterais savoir s'il est possible de créer une classe utilisant un template "restreint" à certaines classes. Je m'explique, je souha


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,451 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales