|
MSTL 1.4.0
A Modern C++ Library with extended functionality, web components, and utility libraries
|
在未初始化内存上进行的安全操作 更多...
函数 | |
| template<typename Iterator1, typename Iterator2, enable_if_t< is_ranges_fwd_iter_v< Iterator2 >, int > = 0> | |
| MSTL_CONSTEXPR20 Iterator2 | uninitialized_copy (Iterator1 first, Iterator1 last, Iterator2 result) |
| 复制元素到未初始化内存 | |
| template<typename Iterator1, typename Iterator2, enable_if_t< is_ranges_fwd_iter_v< Iterator2 >, int > = 0> | |
| MSTL_CONSTEXPR20 pair< Iterator1, Iterator2 > | uninitialized_copy_n (Iterator1 first, size_t count, Iterator2 result) |
| 复制指定数量的元素到未初始化内存 | |
| template<typename Iterator, typename T, enable_if_t< is_ranges_fwd_iter_v< Iterator >, int > = 0> | |
| MSTL_CONSTEXPR20 void | uninitialized_fill (Iterator first, Iterator last, const T &x) |
| 在未初始化内存上填充值 | |
| template<typename Iterator, typename T, enable_if_t< is_ranges_fwd_iter_v< Iterator >, int > = 0> | |
| MSTL_CONSTEXPR20 Iterator | uninitialized_fill_n (Iterator first, size_t n, const T &x) |
| 在未初始化内存中用指定值填充指定数量的元素 | |
| template<typename Iterator1, typename Iterator2, enable_if_t< is_ranges_input_iter_v< Iterator1 > &&is_ranges_fwd_iter_v< Iterator2 >, int > = 0> | |
| MSTL_CONSTEXPR20 Iterator2 | uninitialized_move (Iterator1 first, Iterator1 last, Iterator2 result) |
| 在未初始化内存中移动元素 | |
| template<typename Iterator1, typename Iterator2, enable_if_t< is_ranges_input_iter_v< Iterator1 > &&is_ranges_fwd_iter_v< Iterator2 >, int > = 0> | |
| MSTL_CONSTEXPR20 pair< Iterator1, Iterator2 > | uninitialized_move_n (Iterator1 first, size_t count, Iterator2 result) |
| 在未初始化内存中移动指定数量的元素 | |
在未初始化内存上进行的安全操作
| MSTL_CONSTEXPR20 Iterator2 uninitialized_copy | ( | Iterator1 | first, |
| Iterator1 | last, | ||
| Iterator2 | result ) |
复制元素到未初始化内存
| Iterator1 | 输入迭代器类型 |
| Iterator2 | 输出迭代器类型 |
| first | 输入范围起始 |
| last | 输入范围结束 |
| result | 输出范围起始 |
| memory_exception | 当值类型为非平凡类型时,如果构造过程中发生异常 |
将范围 [first, last) 的元素复制到未初始化的内存区域 [result, ...)。 如果复制过程中抛出异常,已构造的元素会被析构。
在文件 uninitialized.hpp 第 89 行定义.
引用了 _INNER.
| MSTL_CONSTEXPR20 pair< Iterator1, Iterator2 > uninitialized_copy_n | ( | Iterator1 | first, |
| size_t | count, | ||
| Iterator2 | result ) |
复制指定数量的元素到未初始化内存
| Iterator1 | 输入迭代器类型 |
| Iterator2 | 输出迭代器类型 |
| first | 输入起始 |
| count | 要复制的元素数量 |
| result | 输出起始 |
| memory_exception | 当值类型为非平凡类型时,如果构造过程中发生异常 |
从 first 开始复制 count 个元素到未初始化的内存区域。
在文件 uninitialized.hpp 第 156 行定义.
| MSTL_CONSTEXPR20 void uninitialized_fill | ( | Iterator | first, |
| Iterator | last, | ||
| const T & | x ) |
在未初始化内存上填充值
| Iterator | 迭代器类型 |
| T | 值类型 |
| first | 范围起始 |
| last | 范围结束 |
| x | 要填充的值 |
| memory_exception | 当值类型为非平凡类型时,如果构造过程中发生异常 |
在未初始化的内存区域 [first, last) 上构造值为 x 的对象。 如果构造过程中抛出异常,已构造的元素会被析构。
在文件 uninitialized.hpp 第 219 行定义.
引用了 _INNER.
| MSTL_CONSTEXPR20 Iterator uninitialized_fill_n | ( | Iterator | first, |
| size_t | n, | ||
| const T & | x ) |
在未初始化内存中用指定值填充指定数量的元素
| Iterator | 迭代器类型 |
| T | 值类型 |
| first | 起始位置 |
| n | 要填充的元素数量 |
| x | 要填充的值 |
| memory_exception | 当值类型为非平凡类型时,如果构造过程中发生异常 |
类似于 fill_n(),但在未初始化内存上操作。
在文件 uninitialized.hpp 第 285 行定义.
引用了 _INNER.
| MSTL_CONSTEXPR20 Iterator2 uninitialized_move | ( | Iterator1 | first, |
| Iterator1 | last, | ||
| Iterator2 | result ) |
在未初始化内存中移动元素
| Iterator1 | 输入迭代器类型 |
| Iterator2 | 输出迭代器类型 |
| first | 输入范围起始 |
| last | 输入范围结束 |
| result | 输出范围起始 |
| memory_exception | 当值类型为非平凡类型时,如果构造过程中发生异常 |
将范围 [first, last) 的元素移动到以 result 开始的未初始化内存区域。 使用移动构造函数构造对象,可能使源对象处于有效但未指定的状态。
在文件 uninitialized.hpp 第 353 行定义.
引用了 _INNER.
| MSTL_CONSTEXPR20 pair< Iterator1, Iterator2 > uninitialized_move_n | ( | Iterator1 | first, |
| size_t | count, | ||
| Iterator2 | result ) |
在未初始化内存中移动指定数量的元素
| Iterator1 | 输入迭代器类型 |
| Iterator2 | 输出迭代器类型 |
| first | 输入起始迭代器 |
| count | 要移动的元素数量 |
| result | 输出范围起始 |
| memory_exception | 当值类型为非平凡类型时,如果构造过程中发生异常 |
在文件 uninitialized.hpp 第 419 行定义.