动机 std::map<K, V>的insert方法返回std::pair<iterator, bool>,两个元素分别是指向所插入键值对的迭代器与指示是否新插入元素的布尔值 ...
动机 std::map<K, V>的insert方法返回std::pair<iterator, bool>,两个元素分别是指向所插入键值对的迭代器与指示是否新插入元素的布尔值 ...
引子 凡是涉及STL的错误都不堪入目,因为首先STL中有复杂的层次关系,在错误信息中都会暴露出来,其次这么多类和函数的名字大多都是双下划线开头的,一般人看得不习惯。 一个经典的错误是给std::s ...
协程(coroutine),是一种轻量级的用户态线程,操作系统对协程无感知。实现的是协作式调度(非抢占式调度),即协程切换由当前协程控制,主动让出CPU(例如当前协程在等待异步网络IO时)。通常情况下 ...
摘要:事件驱动(event driven)是一种常见的代码模型,其通常会有一个主循环(mainloop)不断的从队列中接收事件,然后分发给相应的函数/模块处理。常见使用事件驱动模型的软件包括图形用 ...
许久未在这儿写文章了,从公众号搬几篇原创过来,感兴趣的可以去关注一波。 0. 前言(Introduction) 这篇文章构思了许久。 初时不知从何写起,协程的背后是整个并发,所涉知识极多,对于标 ...
翻译自https://www.bfilipek.com/2019/02/lambdas-story-part1.html、https://www.bfilipek.com/2019/02/lambda ...
C++20草案中的宇宙飞船运算符(<=>,spaceship operator) Herb Sutter提议的新三路运算符<=>已经被合入C++20草案中。 宇宙飞船运算符 ...