C++list类中的数据怎么查找

在主函数中已经定义了一个list对象怎么查找某个数据是否在其中,有没有函数,还是另自己写代码另假设对象中有5个int数据我怎么输出它们... 在主函数中已经定义了一个list对象 怎么查找某个数据是否在其中,有没有函数,还是另自己写代码
另 假设对象中有5个int数据 我怎么输出它们
展开
 我来答
tattackor
2015-11-01 · TA获得超过3.5万个赞
知道大有可为答主
回答量:5083
采纳率:94%
帮助的人:870万
展开全部

1、可以直接用标准模板库提供的find函数或者find_if函数查找。输出的话可以用for_each函数。

2、例程:

list<int> mylist;
    mylist.push_back( 1 );
    mylist.push_back( 11 );
    mylist.push_back( 111 );
    mylist.push_back( 1111 );
    int a = 111;
    list<int>::iterator it = find( mylist.begin(), mylist.end(), a ); //查找
    if ( it != mylist.end() )
        cout << a << " is in the list" << endl;
    for ( it = mylist.begin(); it != mylist.end(); ++it ) //输出
    {
        cout << *it << "\t";
    } 
    cout << endl;
    copy(mylist.begin(), mylist.end(), ostream_iterator<int> (cout, "\t")); //或者这样输出
    cout << endl;
elesteel
2011-03-14 · TA获得超过241个赞
知道答主
回答量:89
采纳率:100%
帮助的人:0
展开全部
可以直接用标准模板库提供的find函数或者find_if函数查找。
输出的话可以用for_each函数。
可以参考 http://www.cplusplus.com/reference/algorithm/
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ziyang64
2011-03-14 · TA获得超过962个赞
知道小有建树答主
回答量:529
采纳率:0%
帮助的人:808万
展开全部
list<int> mylist;
mylist.push_back( 1 );
mylist.push_back( 11 );
mylist.push_back( 111 );
mylist.push_back( 1111 );

int a = 111;
list<int>::iterator it = find( mylist.begin(), mylist.end(), a ); //查找
if ( it != mylist.end() )
cout << a << " is in the list" << endl;

for ( it = mylist.begin(); it != mylist.end(); ++it ) //输出
{
cout << *it << "\t";
}

cout << endl;
copy(mylist.begin(), mylist.end(), ostream_iterator<int> (cout, "\t")); //或者这样输出
cout << endl;
更多追问追答
追问
list::iterator it = find( mylist.begin(), mylist.end(), a ); 
我编译器提示find是没有标识的 需要什么头文件么?
追答
#include 
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式