搜索
编程论坛
→
开发语言
→
C++论坛
→
『 C++教室 』
→ 求助find_if的使用
标题:
求助find_if的使用
只看楼主
warmsnake323
等 级:
新手上路
帖 子:23
专家分:0
注 册:2007-11-28
楼主
问题点数:0 回复次数:5
求助find_if的使用
例如定义了一个结构体
typedef struct
{
int num;
string name;
}tt;
vector<tt> lotofname;
for(int i=0;i<50;i++)
{
tt names;
cin>>names.num>>names.name;
lotofname.push_back(names);
}
若要使用find_if在这组tt中找到 特定name值的元素,应该如何使用find_if?
搜索更多相关主题的帖子:
find
2008-11-22 17:25
warmsnake323
等 级:
新手上路
帖 子:23
专家分:0
注 册:2007-11-28
第
2
楼
得分:0
发现重贴了
不过上一个帖子也没有看得懂的答案啊~
2008-11-22 17:45
zxwangyun
来 自:云南
等 级:
业余侠客
威 望:
1
帖 子:232
专家分:299
注 册:2008-10-17
第
3
楼
得分:0
关键是谓词判断函数的的设置:
我自己构造了一个,谨供参考
bool compName(tt T){
return T.name=="mm";//mm为特定的name值(自己设定)
}
//下面是find_if的用法:
vector<tt>::iterator iLocation;
iLocation=find_if(lotofname.begin(),lotofname.end(),compName);
if(iLocation!=lotofname.end())
cout<<"找到第一个特定元素值相等的元素:"<<(*iLocation).name<<endl\
<<"元素索引位置为:"<<iLocation-lotofname.begin()<<endl;
努力改变一点点!!
2008-11-23 13:05
warmsnake323
等 级:
新手上路
帖 子:23
专家分:0
注 册:2007-11-28
第
4
楼
得分:0
谢谢!!
可是如果名字要在运行时指定呢?这样好像就不行了吧
2008-11-23 20:40
zxwangyun
来 自:云南
等 级:
业余侠客
威 望:
1
帖 子:232
专家分:299
注 册:2008-10-17
第
5
楼
得分:0
变通一下不就ok啦
自己动动脑筋的事情
努力改变一点点!!
2008-11-23 21:23
warmsnake323
等 级:
新手上路
帖 子:23
专家分:0
注 册:2007-11-28
第
6
楼
得分:0
回复 第4楼 warmsnake323 的帖子
这不是一个难度层面上的问题啊
谢谢你啦
我问问其他人吧
2008-11-25 12:02
6
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-245749-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.086067 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved