how to use the function find in STL?
waiting...
great thanks!
问题点数:50、回复次数:4Top
1 楼_xiaolifeidao(西门)回复于 2003-06-03 08:56:14 得分 0
the problem is following:
struct Pair//coordination
{
int row;
int col;
};
typedef list<Pair> List;//trace
List map;
Pair front;
find(map.begin(),map.end(),...);
其中...处该如何写才能找到front呢?
谢谢!
Top
2 楼xorong(勤劳与智慧)回复于 2003-06-03 21:37:40 得分 30
struct Pair//coordination
{
int row;
int col;
bool operator == (const Pari & right) const{
return row = right.row && col == right.col;
}
};
Pair必须重载==
然后
typedef list<Pair> List;//trace
List map;
Pair front;
front.row = 1; front col = 2;
find(map.begin(),map.end(), front);
ok了
Top
3 楼xorong(勤劳与智慧)回复于 2003-06-03 21:38:52 得分 0
row = right.row 改写为row == right.rowTop
4 楼cxjddd(又是花开时)回复于 2003-06-04 20:58:16 得分 20
用pair不就好了吗?
list<pair<int, int> > l;
pair<int, int> front(1,2);
find(l.begin(), l.end(), front);
map是标准库里的,没必要同名啊!Top




