命名空间
变体
操作

std::indirectly_movable_storable

来自 cppreference.com
< cpp‎ | iterator
 
 
迭代器库
迭代器概念
迭代器原语
算法概念和实用程序
间接可调用概念
通用算法要求
indirectly_movable_storable
(C++20)
(C++20)
(C++20)
(C++20)
实用程序
(C++20)
迭代器适配器
范围访问
(C++11)(C++14)
(C++14)(C++14)  
(C++11)(C++14)
(C++14)(C++14)  
(C++17)(C++20)
(C++17)
(C++17)
 
定义在头文件中 <iterator>
template< class In, class Out >

concept indirectly_movable_storable =
    std::indirectly_movable<In, Out> &&
    std::indirectly_writable<Out, std::iter_value_t<In>> &&
    std::movable<std::iter_value_t<In>> &&
    std::constructible_from<std::iter_value_t<In>, std::iter_rvalue_reference_t<In>> &&

    std::assignable_from<std::iter_value_t<In>&, std::iter_rvalue_reference_t<In>>;
(自 C++20 起)

indirectly_movable_storable 概念指定了 indirectly_readable 类型和 indirectly_writable 类型之间的关系。除了 indirectly_movable 之外,此概念还指定了可以通过中间对象执行从 indirectly_readable 类型进行的移动。

[编辑] 语义要求

InOut 仅在给定类型为 In 的可解引用值 i 时才模拟 std::indirectly_movable_storable<In, Out>

[编辑] 相等性保持

在标准库概念的 requires 表达式 中声明的表达式要求是 相等性保持的(除非另有说明)。

[编辑] 另请参阅

指定了可以从 indirectly_readable 类型移动到 indirectly_writable 类型的值
(概念) [编辑]
指定了可以从 indirectly_readable 类型复制到 indirectly_writable 类型的值,并且可以通过中间对象执行复制
(概念) [编辑]