摘要:
迭代器是对指针进行进一步抽象的产物。迭代器是遍历所有容器(序列)/流的统一界面,是标准库泛形算法的基础。迭代器根据其能力分为五种:categorypropertiesvalid expressionsall categoriescopy-constructible,copy-assignablean... 阅读全文
摘要:
C++最原始的容器之一是数组。数组的特点有:1.大小固定2.单独存在的数组建立在栈上,作为对象成员存在的数组建立在堆上还是栈上则要看作为宿主对象是被建立在堆上还是栈上。栈空间是有限的,所以如果数组在栈上,则不能容纳太多元素,否则会导致stack overflow。C++最原始的容器之二则是用一个指针... 阅读全文
摘要:
conditon_variable(条件变量)用于线程间同步condition_variable有5个函数,函数名及对应的功能如下:wait阻塞自己,等待唤醒wait_for阻塞自己,等待唤醒,最多等待一段时间wait_until阻塞自己,等待唤醒,最多等待到某个时间点notify_one 唤醒一个... 阅读全文
摘要:
互斥锁有可重入、不可重入之分。C++标准库中用mutex表示不可重入的互斥锁,用recursive_mutex表示可重入的互斥锁。为这两个类增加根据时间来阻塞线程的能力,就又有了两个新的互斥锁:timed_mutex(不可重入的锁)、recursive_timed_mutex(可重入的锁)。互斥锁单... 阅读全文
摘要:
class thread是对线程的抽象。以下分别介绍thread是如何表示线程的大部分特征的。执行体 线程的执行体由一个可执行(callable)对象来表示。这个执行体可以在thread创建的时候指定。thread创建完成后线程即启动执行。 template explicit thread(F... 阅读全文
摘要:
时间段的表示tmplate>class duration;duration类被用来表示时间段的计量器,Rep表示计量值,Period表示计量单位,该单位建立在与second的比率上。时间点的表示templateclass time_point;time_point类表示时间点,一个时间点由其和零时间... 阅读全文
摘要:
枚举类型的作用是将一组整型常量组织在一起。和类一样,每个枚举类型定义了一个新的类型。枚举属于字面常量类型。C++11之后枚举类型分为两类:1.限定作用域的枚举类型 2.不限定作用域的枚举类型定义限定作用域的枚举类型 : enum class/struct name [:type]{逗号分隔的枚举成员... 阅读全文
摘要:
运行时类型识别(run-time type identification,RTTI) 由两个运算符实现: 1.dynamic_cast 运算符 2.typeid运算符 dynamic_cast 的使用形式如下: a)dynamic_cast(e) b)dynamic_cast(e) c)... 阅读全文
摘要:
之所以将C++的数组类型与函数类型拿到一块说,是因为两者在很多地方都一样。 首先,声明形式上类似: 数组类型: type [num] 数组:type name[num] 函数类型: return_type (形参列表) 函数:ret... 阅读全文
摘要:
构造 构造函数 tuple的构造函数很普通,没啥说的。default (1)constexpr tuple();默认构造函数copy / move (2)tuple (const tuple& tpl) = default; 拷贝构造函数tuple (tuple&& tpl) = defau... 阅读全文