2011-04-18 245 views
4

如何通過QDateTime對象的值對QDateTime *對象的QList進行排序?如何對QDateTime *的QList進行排序?

+0

如果你想通過QDateTime的內容,而不是指針值進行排序,那麼你應該這麼說。否則,簡單的答案就是'qSort(list)'; – rohanpm 2011-04-18 01:50:44

+0

我的錯,我想按值排序,我編輯了問題 – Jon 2011-04-18 02:04:57

+2

沒有必要將QDateTime編輯處理爲指針,最好使用QList 。 – 2011-04-18 06:26:42

回答

10

您可以使用qSort用自己的比較函數:

#include <QtAlgorithms> 

bool dtcomp(QDateTime* left, QDateTime *right) { 
    return *left < *right; 
} 

QList<DateTime*> dtlist = ...; 
qSort(dtlist.begin(), dtlist.end(), dtcomp); 
+0

謝謝,這應該工作。 – Jon 2011-04-18 02:05:54