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

  FORUM HardWare.fr
  Programmation
  C++

  [C++/Template] Problème d'organisation des fichiers ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[C++/Template] Problème d'organisation des fichiers ?

n°716926
Evadream -​jbd-
Posté le 06-05-2004 à 02:58:00  profilanswer
 

Bonjour tout le monde !
 
J'ai un petit soucis de compilation. Avant de copier inutilement du code sur le forum, je veux m'assurer qu'il ne s'agit pas d'une erreur bête.
 
Je possède une classe template Image qui hérite d'une classe template Matrix :
 

Code :
  1. template<typename T>
  2. class Image : public Matrix<T>
  3. {
  4. /* ... */
  5. } ;


 
J'utilise la classe Image dans une autre classe template PrintAnalyse contenu dans un fichier qui a cette forme :
 

Code :
  1. #ifndef _PRINTANALYSE_1100
  2. #define _PRINTANALYSE_1100
  3. #include <fstream>
  4. #include "Image.h"
  5. template<typename T>
  6. class PrintAnalyze {
  7.      Image<T>*   image ;
  8.      Image<T>*   rayon ;
  9.        
  10.      /* .... */
  11.      public:
  12.      PrintAnalyze() : image(0) { }
  13.      /* .... */
  14.      Image<T>& Image() const { return *image ; } // Ligne 53
  15.      Image<T>& Rayon() const { return *rayon ; }
  16.      /* .... */
  17. } ;
  18. #endif


 
J'ai un main qui instancie juste la classe PrintAnalyse :
 

Code :
  1. #include "PrintAnalyse.h"
  2. int main(int argc, char* argv[])
  3. {   
  4.      PrintAnalyse<unsigned char> build ;
  5. }


 
Et j'obtiens les erreurs suivantes à la compilation (ce sont les toutes premières, y'en a une tripotée d'autres qui en découle) :


PrintAnalyse.h:53: error: syntax error before `&' token
PrintAnalyse.h:54: error: ISO C++ forbids defining types within return type


         
Si je change le #include "Image.h" par la forward declaration suivante :


template<typename T>
class Image ;


J'obtiens le même message d'erreur.
 
Est-ce que cela vous suffit pour me dire s'il s'agit d'une erreur caractéristique, ou bien avez-vous besoin de voir plus de choses ?
 
Merci à vous ! @+


Message édité par Evadream -jbd- le 06-05-2004 à 03:02:23
mood
Publicité
Posté le 06-05-2004 à 02:58:00  profilanswer
 

n°716927
Taz
bisounours-codeur
Posté le 06-05-2004 à 03:05:24  profilanswer
 

        Image<T>& Image() const { return *image ; } // Ligne 53
         Image<T>& Rayon() const { return *rayon ; }  
 
 
déjà t'as un problème de constness
 
et surtout tu fous la merde à donner le même nom à 36 trucs: résultat c'est le bronx entre type, opérateur de conversion et membre

n°716928
Evadream -​jbd-
Posté le 06-05-2004 à 03:19:00  profilanswer
 

Taz a écrit :

Image<T>& Image() const { return *image ; } // Ligne 53
Image<T>& Rayon() const { return *rayon ; }  
déjà t'as un problème de constness


 
Exact.
 

Taz a écrit :


et surtout tu fous la merde à donner le même nom à 36 trucs: résultat c'est le bronx entre type, opérateur de conversion et membre


 
EDIT : ok boulay coding style. Je reviens [:ddr555]
 
Merci pour ton intervention.


Message édité par Evadream -jbd- le 06-05-2004 à 03:20:57
n°716929
Evadream -​jbd-
Posté le 06-05-2004 à 03:25:31  profilanswer
 

Je dirais pas depuis combien de temps j'ai le nez dedans. Ca ne compile toujours pas, mais ca vient d'autre part :) Je vais voir çà.
 
Merci de m'avoir débloqué.


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

  [C++/Template] Problème d'organisation des fichiers ?

 

Sujets relatifs
Problème avec les indexMySQL: problème avec une requête multitable
probleme de creation d un compte sous sql serveru via phpprobleme pour creer des compte sql via php
Probléme mediaProblème d'utilisation de PEAR::DB
petit probleme de recursivitéprobleme de declaration de variable
Programme qui se connecte à un serveur FTP pour rapatrier des fichiersProbleme d'utilisation des variables je crois (PHP + SVG)
Plus de sujets relatifs à : [C++/Template] Problème d'organisation des fichiers ?


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