按价值订购结果

时间:2010-12-09 03:54:13

标签: c++

我想遍历一个向量来查找具有给定ID的记录。 ID由用户提供。下面的代码将按照它们在向量中出现的顺序返回具有给定ID的所有值。如何按价格订购结果,比如从最低到最高?

   for(Seek = List.begin() ; Seek !=List.end() ; Seek++) {
    if(Seek->GetID() == Input)
        cout <<"Price: " << Seek->GetPrice() << endl;

1 个答案:

答案 0 :(得分:3)

使用C ++标准库排序功能与自定义比较应该做你想要的。我不知道 Seek 的类型是什么,但这里有一些东西可以帮助你入门。

struct compareSeeks {
  bool operator() (const Seek& lhs, const Seek& rhs) { return (lhs.price < rhs.price);}
} mycompare;

// method code here...
sort(List.begin(); List.end(), mycompare);

您可以在此处查看更多http://www.cplusplus.com/reference/algorithm/sort/

[更新]我假设您的列表已经过滤了正确的ID,所以我只关注问题的排序方面。