Bonjour,

Mon problème est que j''ai une classe template de type Point<Dim, Type> et j'ai une définition de type dans la classe Spacecarre pour localiser le pixel de l'image qui est: Point.

Lorsque je compile, j'ai ce message d'erreur: "erreur: «Point<D, int>» is not a template" car il pense Point est Point<D, int>.

J'ai un réel pb de nommage.

Ma question est: comment définir un type dont la portée n'est pas à l'intérieur de la classe où il a été défini???



Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
template<int D, typename T>
class Spacecarre
{
 
public:
  Point<D,int> _size;
  typedef Point<D,int> Point;
  bool bord(const Point<D,int>& x)
    {
      Point<D,int> y =0;
      if( x.oneequal(_size-1) || x.oneequal(y)  ) return true;
      else return false;
    }
};
Merci