C++11<functional>深度剖析
2024-10-09 01:26:11
自C++11以来,C++标准每3年修订一次。C++14/17都可以说是更完整的C++11;即将到来的C++20也已经特性完整了。
C++11已经有好几年了,它的年龄比我接触C++的时间要长10倍不止吧(现在已经不到了)。我当然没有体会过在C++11标准发布之前用C++编程是什么感受,但相比我在上MOOC时使用的C++03标准,C++11中lambda表达式的语言特性以及 std::function 与 std::bind 等设施是十分方便的。同时,标准库中的仿函数等也是与这些特性密不可分的。然而,其中一些特性的实现难以想象(曾经我甚至以为 std::function 与编译器内部存在某些联系),也难以理解,所以我要写这个系列的文章。
这一系列文章介绍 <functional> 头文件的实现,主要围绕C++11标准展开,并伴有少量更新标准的内容。
由于 <functional> 中涉及到很多其他的特性,我会在文章中简要介绍它们的使用,并在文章结尾处附上相关文章链接。
文章链接:
成员指针与mem_fn
还有一个 std::function 的扩展,有空写。咕咕咕……
相关资料:
[1] function/bind的救赎(上)(没有下篇;此文写于2010年,boost与TR1中已有 std::function ,但C++11还未发布)
待补充……
最新文章
- Java操作属性文件之工具类
- [poi2010]Hamsters
- FREE 开源 API 管理工具等
- mac共享文件给win7用户
- 复杂的databinding接受Ilist作为数据源
- POJ_2104_Kth_(主席树)
- Web分析日志分析2
- oracle监听服务开启
- php使用PDO方法详解
- 利用Tomcat的用户名和密码构建“永久”后门
- [置顶] ※数据结构※→☆线性表结构(stack)☆============栈 序列表结构(stack sequence)(六)
- JWT(JSON Web Token) 【转载】
- jsonp原理及同源策略
- C++ 提取网页内容系列之二
- 集训总结DAY.1(18.5.22)——KMP
- 什么是Web缓存控制(基于HTTP头域)
- linuxI/O重定向
- WPF 控件被禁用,悬浮提示不显示问题
- Android中获取TextView行数
- Python开发MapReduce系列(二)Python实现MapReduce分桶
热门文章
- Slam笔记I
- Contest 155
- excel中存储的icount,赋值完之后
- Building Applications with Force.com and VisualForce Dev 401-001(一):Introduction
- linux-aapt文件调用问题
- 《Mathematical Analysis of Algorithms》中有关“就地排列”(In Situ Permutation)的算法分析
- Premultiplied Alpha
- 3.用IntelliJ IDEA 创建Maven
- Kitty-Cloud环境准备
- KA 接口表