c++ std::find函数

template <class InputIterator, class T>
InputIterator find (InputIterator first,InputIterator last,? const T& val);

firstlast

分别指向一个序列中初始及末尾位置的输入迭代器。这个范围即 [first,last) ,包括 first 到 last 间的所有元素,包括 first 指向的元素,但不包括 last 指向的元素。

val

需要被搜索的值。

返回

返回指向范围中与 val 等值的第一个元素的迭代器。

如果没有元素匹配,则返回 last 迭代器。

时间: 2024-10-16 13:57:51

c++ std::find函数的相关文章

std::function与std::bind 函数指针

function模板类和bind模板函数,使用它们可以实现类似函数指针的功能,但却却比函数指针更加灵活,特别是函数指向类 的非静态成员函数时. std::function可以绑定到全局函数/类静态成员函数(类静态成员函数与全局函数没有区别),如果要绑定到类的非静态成员函数,则需要使用std::bind #include <iostream> #include <functional> using namespace std; typedef std::function<voi

atoi函数和std::stoi函数的不同点

atoi函数和std::stoi函数的不同点 出处不同 atoi()函数是C标准库函数,头文件为#include<stdlib.h>.同类型函数还包括atol(),atof(),strtol(),strtof()等: std::stoi()函数是C++11开始加入的STL标准模版库的函数,头文件为#include<string>.同类型函数还有std::stol(),std::stoll(): 功能不同 atoi() 会跳过前面的空白字符(包括空格,tab符号等),直到遇到第一个非

Matlab var std cov 函数解析

在Matlab中使用var求样本方差,使用std求标准差! 首先来了解一下方差公式: p = [-0.92 0.73 -0.47 0.74 0.29; -0.08 0.86 -0.67 -0.52 0.93] p = -0.9200    0.7300   -0.4700    0.7400    0.2900 -0.0800    0.8600   -0.6700   -0.5200    0.9300 var(p(1,:)) ans = 0.5511 var(p(1,:),0) ans =

std::function&quot;函数&quot;对象包装器

语义: 类模板std::function是可调用对象的包装器,可以包装除了类成员之外的所有可调用对象.包括,普通函数,函数指针,lambda,仿函数.通过指定的模板参数,它可以用统一的方式保存,并延迟执行它们.所谓的延迟执行,就是回调了. 它使得C++对C的兼容性更强了. 常规多态案例: #include <iostream> #include <functional> using namespace std; class Operator { public: virtual in

std::back_inserter函数用法

back_inserter函数:配合copy函数,把[a, b)区间的数据插入到string对象的末尾,如果容量不够,动态扩容. 使用案例: 1.客户端与服务器通信场景:服务器向客户端发送数据,客户端接收数据. 接收数据的三种方法: (1)错误方法:把接收到的c风格字符串用string构造函数转成string对象,再利用string的重载加运算符函数拼接到变量末尾.数据很有可能是不以'\0'结尾,这样的话将出现严重bug. (2)低效率方法:一个字符一个字符的追加. (3)正确高效方法:运用co

c++多线程编程:实现标准库accumulate函数的并行计算版本

今天使用c++实现了标准库头文件<numeric>中的accumulate函数的并行计算版本,代码如下,注释写的比较详细,仅对其中几点进行描述: ①该实现假定不发生任何异常,故没有对可能产生的异常进行处理 ②第42行的语句: const unsigned int num_thread = std::min((hardware_thread != 0 ? hardware_thread : 2), max_thread); 要运行的线程数是计算出的最大线程数和硬件线程数量的较小值.这是因为若运行

C++函数指针简单使用

函数指针: 函数指针必须包含要调用的函数的内存地址,为了工作正确,指针还必须包含其他信息,即指针所指向的函数的参数列表中的参数类型以及返回类型.因此,在声明函数指针时,必须指定该指针可以指向的函数的参数类型和返回类型,以及指针名. 函数指针的一般形式如下: 返回类型(*指针明名)(参数类型列表); 注意:指针名上的括号是必不可少的,否则*就会与返回类型结合,就成了一个函数原型了. 示例: #include <iostream> using std::cout; using std::endl;

C++中传送函数指针

函数指针是一种非常好的类型.因此,可以编写一个函数,它的一个参数是函数指针.然后,在(外部)函数使用其函数指针参数时,就间接地调用在调用函数时对应参数指向的函数. 由于指针在不同的情况下可以指向不同的函数,因此允许调用程序确定要从外部函数中调用哪个函数. 在用函数指针类型的参数调用函数时,参数可以只包含函数地址的相应类型的指针.还可以把函数名作为参数,显示传送函数.作为参数传送给另一个函数的函数有时称为回调函数. 示例: #include <iostream> using std::cout;

条款25:考虑写出一个不抛异常的swap函数

条款25:考虑写出一个不抛异常的swap函数 swap函数在C++中是一个非常重要的函数,但实现也非常复杂. 看一个缺省的std::swap函数的实现 namespace std { template<typename T> void swap( T& a , T& b) { T temp(a); a = b; b = temp } } ①内置类型的调用 int a = 2; int b =3; std::swap(a, b); cout<<"a:&quo