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

  FORUM HardWare.fr
  Programmation
  C++

  protected dans classe template

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

protected dans classe template

n°1317850
djcam
Posté le 03-03-2006 à 15:10:54  profilanswer
 

Salut!
j'ai une classe SimilarityVectorCalculator templatee sur class TNodeType qui fonctionne. Je voudrais faire heriter publiquement de cette classe une classe SimilarityVectorCalculatorBis dont une des methodes utilise un attribut protege de sa mere. A la compilation, je recois un message d'erreur comme quoi il ne connait pas m_Div (l'attribut protege de sa mere en qn):itkSimilarityVectorCalculatorBis.txx:52: error: `m_Div' undeclared (first use this function)

Code :
  1. template <class TNodeType>
  2. class ITK_EXPORT SimilarityVectorCalculator  : public ProcessObject
  3. {
  4. public:
  5. //...
  6. protected:
  7.   SimilarityVectorCalculator();
  8.   virtual ~SimilarityVectorCalculator();
  9.   SimilarityVectorCalculator(const Self& ) {}
  10. typename SampleType::Pointer m_Div;
  11. //...
  12. }


Code :
  1. template <class TNodeType> class ITK_EXPORT SimilarityVectorCalculatorBis  : public SimilarityVectorCalculator<TNodeType>
  2. {
  3. public:
  4. virtual ArrayType* BuildArray(TreeType* fixed,TreeType* moving, MeshingType* mesh);
  5. //...
  6. protected:
  7.   SimilarityVectorCalculatorBis():Superclass(){};
  8.   virtual ~SimilarityVectorCalculatorBis(){};
  9.   SimilarityVectorCalculatorBis(const Self& ) {}
  10. }


Code :
  1. template <class TNodeType>
  2. typename SimilarityVectorCalculatorBis<TNodeType>::ArrayType*
  3. SimilarityVectorCalculatorBis<TNodeType>
  4. ::BuildArray(TreeType* fixed,TreeType* moving, MeshingType* mesh)
  5. {
  6. //...
  7. m_Div->FillWith(moving->GetNumberOfLevels(),0);
  8. //...
  9. }


Si qqn voit l'erreur que j'ai faite, ce serait cool!

mood
Publicité
Posté le 03-03-2006 à 15:10:54  profilanswer
 

n°1317979
++fab
victime du syndrome IH
Posté le 03-03-2006 à 16:48:11  profilanswer
 

this->m_div
 
ou encore
 
SimilarityVectorCalculator<T>::m_div

n°1317986
++fab
victime du syndrome IH
Posté le 03-03-2006 à 16:53:01  profilanswer
 

éventuellement des directives using dans la classe scope aussi.

n°1319294
djcam
Posté le 06-03-2006 à 11:53:14  profilanswer
 

++fab a écrit :

this->m_div
 
ou encore
 
SimilarityVectorCalculator<T>::m_div


Merci beaucoup!!!! :)

n°1319424
Taz
bisounours-codeur
Posté le 06-03-2006 à 14:39:46  profilanswer
 

this-> est mieux (à moins que tu veuilles vraiment celui de l'un parent donné)


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

  protected dans classe template

 

Sujets relatifs
Probleme classe heritant vector : redéfinition erase()comment passer d un fichier d une classe a des fichiers d une classe?
Persistence de la valeur d'attributs d'une classe ?Vecteur sans template
Partager des instances de classe entre java et C#Supprimer une instance de classe
[UML] Diagramme de classe (aide) ?Acceder à des objets d'une classe via une autre classe
[eclipse 3.1] Création de Jar -> trouve pas la classe main[C++] Template... erreur tte bete surement...
Plus de sujets relatifs à : protected dans classe template


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