16.4.5 容器种类(中:C++11新增的容器要求)

C++11新增的基本容器要求

表达式 返回类型 说明 复杂度
X u(rv)   调用移动构造函数后,u的值与rv的原始值相同 线性
X u = rv   作用同X u(rv)  
a = rv X& 调用移动赋值运算符后,u的值与rv的原始值相同 线性
a.cbegin() const_iterator 返回指向容器第一个元素的const迭代器 固定
a.cend() const_iterator 返回超尾值const迭代器 固定

复制构造和复制赋值以及移动构造和移动赋值之间的差别在于,复制操作保留源对象,而

移动操作可修改源对象,还可能转让所有权,而不做任何复制。

如果源对象是临时的,移动操作的效率将高于常规复制。

posted @ 2020-08-22 22:50  孱陵  阅读(124)  评论(0编辑  收藏  举报