Swisslinux.org

− Le carrefour GNU/Linux en Suisse −

 

Langue

 

Le Forum

Vous n'êtes pas identifié.

#1 05 Feb 2013 16:44:56

PinkFloyd
Citoyen(ne)
 
Lieu: Conthey & Lausanne
Date d'inscription: 16 Aug 2009
Messages: 21
Site web

[résolu] c++ methode class template specialisation

voici mon code

Code:

template<typename T>
classe A{
  public:
//je n'indique pas les constructeurs et destructeurs
    void do_something();
    void do_something_else(double a);

  private:
    T t;
}

template<>
void A<double>::do_something(){
//lié au type double si une instance de classe A est déclarée par A<double>
}

template<>
void A<int>::do_something(){
//lié au type int si  une instance de classe la classe A est déclarée A<int>
}

template<>
void A<double>::do_something_else(double a){
//lié au type double si  une instance de classe A est déclarée A<double>
}

template<>
void A<int>::do_something_else(double a){
//lié au type int si  une instance de classe A est déclarée A<int>
}

mais ça ne compile pas... la première fonction void, semble ok (elle ne contient pas d'argument)  mais la deuxième me revoie une erreure

Code:

erreur: template-id ‘do_something_else<>’ for ‘void A<double>::do_something_else(double a)’ does not match any template declaration
note: saw 1 ‘template<>’, need 2 for specializing a member function template

j'ai regardé
http://stackoverflow.com/questions/7791 … late-class

mais la première réponse n'aide pas... ou alors je comprends pas comment faire

Dernière modification par PinkFloyd (06 Feb 2013 10:35:34)

Hors ligne

 

#2 06 Feb 2013 10:35:14

PinkFloyd
Citoyen(ne)
 
Lieu: Conthey & Lausanne
Date d'inscription: 16 Aug 2009
Messages: 21
Site web

Re: [résolu] c++ methode class template specialisation

laissez tomber, mon erreur était ailleur... ce code devrait fonctionner déso

Hors ligne

 

Pied de page des forums

Powered by FluxBB