c++中find函数的用法

find函数主要实现的是在容器内查找指定的元素,并且这个元素必须是基本数据类型的。
查找成功返回一个指向指定元素的迭代器,查找失败返回end迭代器。

头文件

#include <algorithm>

函数实现

template<class InputIterator, class T>
InputIterator find (InputIterator first, InputIterator last, const T& val)
{
  while (first!=last)
  {
     if (*first==val) return first;
     ++first;
   }
    return last;
}

例1(vector)

#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;

int main()
{
    vector<string> m;
    m.push_back("hello");
    m.push_back("hello2");
    m.push_back("hello3");
    if (find(m.begin(), m.end(), "hello") == m.end())
        cout << "no" << endl;
    else
        cout << "yes" << endl;
}

例2(set)

#include <iostream>
#include <algorithm>
#include <string>
#include <set>
using namespace std;

int main()
{
    set<string> m;
    m.insert("hello");
    m.insert("hello2");
    m.insert("hello3");
    if (find(m.begin(), m.end(), "hello") == m.end())
        cout << "no" << endl;
    else
        cout << "yes" << endl;
}

1:set自身有个find函数,举例如下:

#include <iostream>
#include <algorithm>
#include <string>
#include <set>
using namespace std;

int main()
{
    set<string> m;
    m.insert("hello");
    m.insert("hello2");
    m.insert("hello3");
    if (find(m.begin(), m.end(), "hello") == m.end())
        cout << "no" << endl;
    else
        cout << "yes" << endl;
}

2:string自身有个find函数,举例如下:

#include <iostream>
#include <algorithm>
#include <string>
using namespace std;

int main()
{
    string s = "helllo";
    if (s.find("e") == string::npos)  //yes
        cout << "no" << endl;
    else
        cout << "yes" << endl;

    if (s.find("z") == string::npos)  //no
        cout << "no" << endl;
    else
        cout << "yes" << endl;
}
时间: 2024-10-07 01:10:11

c++中find函数的用法的相关文章

awk中split函数的用法

The awk function split(s,a,sep) splits a string s into an awk array a using the delimiter sep. time=12:34:56 echo $time | awk '{split($0,a,":" ); print a[1]}' 12   echo $time | awk '{split($0,a,":" ); print a[3]}' 34   echo $time | awk

PHP中spl_autoload_register函数的用法

spl_autoload_register (PHP 5 >= 5.1.2) spl_autoload_register — 注册__autoload()函数 说明bool spl_autoload_register ([ callback $autoload_function ] )将函数注册到SPL __autoload函数栈中.如果该栈中的函数尚未激活,则激活它们. 如果在你的程序中已经实现了__autoload函数,它必须显式注册到__autoload栈中.因为 spl_autoload

Delphi中 StrToIntDef函数的用法

Delphi中 StrToIntDef函数的用法: 比如我要判断一个文本框里输入的字符串能不能转换为integer类型,如果能,则返回转换后的整型数据,如果不能,则返回整数0,那么我就可以用strtointdef这个函数. 写法如下: 假设edit1.text:='1000'; 则strtointdef(edit1.text,0)返回值为1000. 如果edit1.text:='fdafds',则返回值为0. (如果你用strtoint(edit1.text)当edit1.text:='fdad

C++中substr函数的用法

原文地址:http://blog.csdn.net/no_retreats/article/details/7853066 C++中substr函数的用法 #include<string>#include<iostream>using namespace std; main(){string s("12345asdf");string a=s.substr(0,5);       //获得字符串s中 从第0位开始的长度为5的字符串//默认时的长度为从开始位置到尾

解析PHP中ob_start()函数的用法

解析PHP中ob_start()函数的用法 本篇文章是对PHP中ob_start()函数的用法进行了详细的分析介绍,需要的朋友参考下 ob_start()函数用于打开缓冲区,比如header()函数之前如果就有输出,包括回车/空格/换行/都会有"Header had all ready send by"的错误,这时可以先用ob_start()打开缓冲区PHP代码的数据块和echo()输出都会进入缓冲区而不会立刻输出.当然打开缓冲区的作用很 多,只要发挥你的想象.可以总结以下四点: 1.

(转)解析PHP中ob_start()函数的用法

本篇文章是对PHP中ob_start()函数的用法进行了详细的分析介绍,需要的朋友参考下 ob_start()函数用于打开缓冲区,比如header()函数之前如果就有输出,包括回车/空格/换行/都会有"Header had all ready send by"的错误,这时可以先用ob_start()打开缓冲区PHP代码的数据块和echo()输出都会进入缓冲区而不会立刻输出.当然打开缓冲区的作用很多,只要发挥你的想象.可以总结以下四点: 1.用于header()之前ob_start();

CC++中sizeof函数的用法

C/C++中sizeof()函数的用法 学习C/C++有时会遇到下面的情况: 已知 char *str1="absde"; char str2[]="absde"; char str3[8]={'a'}; char str4 [] = "0123456789"; 为什么sizeof(str1)=4 sizeof(str2)=6; sizeof(str3)=8; sizeof(str4)=11;呢? 丈二和尚摸不着头脑,接下来我们一起好好讨论讨论,

python中pop()函数的用法

python中pop()函数的用法 pop() 函数用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值. 语法:list.pop(obj=list[-1]) //默认为 index=-1,删除最后一个列表值. obj -- 可选参数,要移除列表元素的对象. 该方法返回从列表中移除的元素对象. sentence=['All', 'good', 'things', 'come', 'to' ,'those', 'who', 'wait.'] print("默认为 index=-1,删除

php中一些函数的用法

addslashes() 定义和用法 addslashes() 函数返回在预定义字符之前添加反斜杠的字符串. 预定义字符是: 单引号(') 双引号(") 反斜杠(\) NULL 提示:该函数可用于为存储在数据库中的字符串以及数据库查询语句准备字符串. 注释:默认地,PHP 对所有的 GET.POST 和 COOKIE 数据自动运行 addslashes().所以您不应对已转义过的字符串使用 addslashes(),因为这样会导致双层转义.遇到这种情况时可以使用函数 get_magic_quot

C/C++中strcpy函数的用法

C语言标准库函数 原型声明:extern char *strcpy(char *dest,char *src); 头文件:string.h 功能:把src所指由NULL结束的字符串复制到dest所指的数组中. 说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串. 返回指向dest的指针. 典型实现 /********************** * C语言标准库函数strcpy的一种典型的工业级的最简实现 * 返回值: * 返回目标串的地址. * 对于出现