Posted on 2007-07-05 19:14
魔のkyo 阅读(1026)
评论(0) 编辑 收藏 引用 所属分类:
STL
#include <iostream>
#include <functional>
#include <cstdlib>
#include <algorithm>
#include <queue>
#include <set>
#include <vector>
#include <string>
using namespace std;
struct Node{
int data;
Node(){}
Node(int n){data=n;}
};
struct myCmp : binary_function<Node,Node,bool>{
bool operator () (const Node& a,const Node& b)
{
return a.data < b.data;
}
};
/*
根据实践即便不从 binary_function 派生也是可以使用的
class myCmp{
public:
bool operator () (const Node& a,const Node& b)
{
return a.data < b.data;
}
};
*/
int main()
{
priority_queue<Node,vector<Node>,myCmp> PQ;
set<Node,myCmp> S;
Node arr[6]={1,-1,2,-2,3,-3};
sort(arr,arr+6,myCmp());
}