Bonjour,

Voila j'ai un petit problème, enfin plutôt qqchose que je ne comprends pas ..
Exemple simple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 
template<typename T>
class TClass
{
public:
  T mean() { return (T)666; }
};
 
class Test : public TClass<float>
{
public:
  float mean(uint i) { return 555.0; }  
};
 
int
main()
{  
  Test t;
  std::cout << t.mean() << std::endl;
 
  return EXIT_SUCCESS;
}
Voila le problème : quand on surcharge une méthode d'un classe template, on ne peux plus avoir accès a la méthode de base... Si on commente la surcharge de méthode dans la classe Test cela marche...

POURQUOI ? je ne comprends pas ...

Quelle est la solution, a part ajouter
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
float mean() { return TClass<float>::mean(); }
dans la classe Test ???

Cordialement