您的位置:首页 > 博客中心 > 编程语言 >

[C++11新特性]第二篇

时间:2022-03-21 06:14

0.可变数量参数,可变函数模版,变长模版类

  • c++98可变数量参数

gxlsystem.com,布布扣

事实上,仿函数是编译器实现lambda的一种方式,在现阶段,通常编译器会把lambda函数转化为一个仿函数对象。

关于lambda和STL的联系,它使得STL的算法使用更加方便,比如for_each,其原型是:

UnaryProc for_each(InputIterator beg,InputIterator end,UnaryProc op)

for_each算法第三个参数是一个单个参数的“函数”,即一个函数指针、仿函数或者lambda函数。

函数指针方法的缺陷是:往往定义在别的地方,阅读代码不方便;如果不进行inline优化,性能就比lambda函数差很多。而且函数指针的应用范围小很多,相比函数指针、仿函数,lambda函数往往是最佳的选择。

注:在c++98中,STL帮助我们定义了很多仿函数可直接使用。

[C++11新特性]第二篇,布布扣,bubuko.com

本类排行

今日推荐

热门手游