Salve compilando il mio esercizio e avendo a disposizione i questi file
BaseBinTree.h (che vi posso mettere ma non credo sia li l'errore)
IntBinTree.h
codice:#ifndef INTBTREE_H #define INTBTREE_H #include "BaseBinTree.h" class IntBinTree: public BaseBinTree<int>{ protected: /* inserire qui le intestazioni */ static int _sumEven(Node* t); static void _mirror(Node* t); public: /* inserire qui le intestazioni pubbliche */ int sumEven(){_sumEven(root);} void mirror(){_mirror(root);} }; #endif
IntBinTree.cpp
ed infine il main.cppcodice:#include "IntBinTree.h" /* Inserire qui il codice */ int IntBinTree::_sumEven(Node* t){ if (t == NULL) return 0; return (t->info % 2 == 0?t->info:0) + _sumEven(t->left); + _sumEven(t->right); } void IntBinTree::_mirror(Node* t){ if (t == NULL) return; Node* app=t->left; t->left=t->right; t->right=app; _mirror(t->left); _mirror(t->right); }
una volta che lancio il compilatore su dev c++ mi da il seguente errore:codice:#include <cstdlib> #include <iostream> #include "IntBinTree.h" using namespace std; int main() { IntBinTree albero; cin>>albero; cout<<albero.sumEven(); cout<<albero; cout<<albero.mirror(); system("PAUSE"); return EXIT_SUCCESS;
"14 'class IntBinTree' has no member named 'mirror' "
Qualcuno saprebbe dirmi che tipo di errore sto facendo e magari come correggerlo? Grazie mille per una eventuale risposta.

Rispondi quotando