C++list类中的数据怎么查找
在主函数中已经定义了一个list对象怎么查找某个数据是否在其中,有没有函数,还是另自己写代码另假设对象中有5个int数据我怎么输出它们...
在主函数中已经定义了一个list对象 怎么查找某个数据是否在其中,有没有函数,还是另自己写代码
另 假设对象中有5个int数据 我怎么输出它们 展开
另 假设对象中有5个int数据 我怎么输出它们 展开
3个回答
展开全部
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;
展开全部
可以直接用标准模板库提供的find函数或者find_if函数查找。
输出的话可以用for_each函数。
可以参考 http://www.cplusplus.com/reference/algorithm/
输出的话可以用for_each函数。
可以参考 http://www.cplusplus.com/reference/algorithm/
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
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;
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
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询