Surcharge de l'opérateur d'affection
Bonjour,
J'ai créé une classe template stack. Comme elle est complexe, j'ai voulut surcharger l'opérateur d'affection ( = ).
Mais il y a malheureusement quelques erreurs(en commentaire)
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
| template <class T> //contained type
stack& stack<T>::operator=(stack &source) {
/////////////////////////////////////////////////////////////////////////////////////
//'stack' : l'utilisation d'une classe modèle requiert une liste d'arguments modèle
/////////////////////////////////////////////////////////////////////////////////////
if (&source=this) {
erreur error;
error.errornum=4;
error.msg="Function have not utility";
throw (error);
}
~stack();
if source.get_size()<=0 {
erreur error;
error.errornum=2;
error.msg="Out of range";
throw (error);
}
premier=new contain;
dernier=premier;
contain.suivant=NULL;
contain.precedant=NULL;
contain.donnee=source.get_front();
for (int i=1;i<source.get_size();i++)
push_back(source.get_front(i));
return *this;
}
/////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////////
//'stack<T>::operator =' : impossible de faire correspondre la définition de fonction avec une déclaration existante POURTANT J'AI BIEN MIS SON PROTOTYPE
////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////// |
Merci d'avance,
ProgVal