есть класс, в нем есть структура :
private :
struct Cluster
{
private :
int value_;
QSet<int> numbersOfItems_;
QPoint centerPos;
bool isPainted;
public :
Cluster();
Cluster(int item1 ,int item2, int nValue);
Cluster(int item1, int nValue);
void setValue(int newValue);
int value(){ return value_; }
QSet<int> &numbersOfItems() {return numbersOfItems_;}
void setPainted(bool is);
QString toString(QStringList * lst);
void append(Cluster * nClust);
};
public :
bool cmp(const Cluster& c1, const Cluster& c2){return c1.value() > c2.value();}
QVector <Cluster * > bufvec;
qSort(bufvec.begin(),bufvec.end(), cmp);
1. сделай эту функцию static и передавай в qSort как Classname::cmp
2. ты сортируешь вектор указателей, а твоя функция сравнения принимает параметры-ссылки. сделай их тоже указателями.
static bool cmp(const Cluster *c1, const Cluster *c2){return c1->value() > c2->value(); }
Спасибо, сказалась моя невнимательность:)
Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)