Ciao a tutti!
Devo sovrascrivere l'operatore di confronto < in una classe che ho scritto in modo da poter utilizzare la funzione sort della libreria standard per ordinare un vettore di oggetti della classe..
Bene, al momento non funziona..
ATask è la classe che deve sovrascrivere l'operatore.. Questa contiene un campo Job*: Job è un'altra classe che ho implementato la quale contiene un "int r " sul quale deve avvenire l'ordinamento..
ATask.h:
ATask.cpp:codice:public: bool operator <(const ATask& other); AJob *job;
Job.h:codice:bool ATask::operator <(const ATask& other){ return job->getr() < other.job->getr(); }
Job.cpp:codice:private: int r; public: int getr() const;
nel programma principale dichiarocodice:int AJob::getr() const { return r; }
in cui inserisco diversi puntatori di ATask per poi utilizzarecodice:std::vector<ATask*> ATasks;
Ho letto mille guide, ma non capisco cosa c'è di sbagliato..codice:std::sort(ATasks.begin(), ATasks.end());
Grazie
Nicola


Rispondi quotando