std::dynarray
来自cppreference.com
|
|
在审核了分委员会针对 n3690 的意见后,该组件被投票移出了 C++14 工作报告,成为一个单独的技术说明(Technical Specification)。截止到 n3797,该容器还不在 C++14 草案中。 |
| 在标头 <dynarray> 定义
|
||
| |
(C++14 起) | |
std::dynarray 是一种对数组进行封装的序列容器,数组的大小在对象构造时确定,整个生命周期中都不会发生改变。
容器中元素的存储是连续的,因此,访问某个元素不但可以使用迭代器,还可以直接使用普通指针与偏移量的方式。也就是说,指向 dynarray 的元素的指针可以传给接收数组元素指针的函数。
数组长度为零时是一种特殊情况(构造时指定元素个数为零)。此时,array.begin() == array.end(),其值是某个特殊值。对长度为零的 dynarray 调用 front() 和 back() 的效果是未定义的。
模版参数
| 本节未完成 |
成员类型
| 成员类型 | 定义 |
reference
|
value_type&
|
const_reference
|
const value_type&
|
reverse_iterator
|
std::reverse_iterator<iterator>
|
const_reverse_iterator
|
std::reverse_iterator<const_iterator>
|
成员函数
构造 dynarray (公开成员函数) | |
析构 dynarray (公开成员函数) | |
| 将值赋给容器 (公开成员函数) | |
访问元素 | |
| 带越界检查访问指定的元素 (公开成员函数) | |
| 访问指定的元素 (公开成员函数) | |
| 访问第一个元素 (公开成员函数) | |
| 访问最后一个元素 (公开成员函数) | |
| 直接访问底层连续存储 (公开成员函数) | |
迭代器 | |
| 返回指向起始的迭代器 (公开成员函数) | |
| 返回指向末尾的迭代器 (公开成员函数) | |
| 返回指向起始的逆向迭代器 (公开成员函数) | |
| 返回指向末尾的逆向迭代器 (公开成员函数) | |
容量 | |
| 检查容器是否为空 (公开成员函数) | |
| 返回元素数 (公开成员函数) | |
| 返回可容纳的最大元素数 (公开成员函数) | |
修改 | |
| 以指定值填充容器 (公开成员函数) | |
非成员函数
(C++20 移除)(C++20 移除)(C++20 移除)(C++20 移除)(C++20 移除)(C++20) |
按照字典顺序比较两个 dynarray 的值 (函数模板) |
辅助类
| 特化 std::uses_allocator 类型特征 (类模板特化) |