std::default_accessor
来自 cppreference.cn
定义在头文件 <mdspan> |
||
template< class ElementType > class default_accessor; |
(since C++23) | |
`std::default_accessor` 类模板的特化是 AccessorPolicy,如果未提供用户指定的访问器策略,则由 std::mdspan 使用。
`default_accessor` 的每个特化都模型化 semiregular
并且是 TriviallyCopyable。
目录 |
[edit] 模板参数
ElementType | - | 元素类型。应为完整的对象类型,既不是抽象类类型也不是数组类型。否则,程序是非良构的 |
[edit] 成员类型
成员类型 | 定义 |
offset_policy
|
default_accessor
|
element_type
|
ElementType
|
reference
|
ElementType&
|
data_handle_type
|
ElementType*
|
[edit] 成员函数
(构造函数) |
构造一个 default_accessor (公共成员函数) |
access |
返回由参数提供的第 n 个元素 (公共成员函数) |
offset |
返回一个由偏移值推进的数据句柄 (公共成员函数) |
std::default_accessor::default_accessor
constexpr default_accessor() noexcept = default; |
(1) | |
template< class OtherElementType > constexpr default_accessor( default_accessor<OtherElementType> ) noexcept {} |
(2) | |
1) 默认构造一个
default_accessor
。2) 从 default_accessor<OtherElementType> 构造一个
default_accessor
。构造函数没有可见的效果。仅当 std::is_convertible_v<OtherElementType(*)[], element_type(*)[]> 为真时,此重载才参与重载解析。std::default_accessor::access
constexpr reference access( data_handle_type p, std::size_t i ) const noexcept; |
||
等价于 return p[i];。
std::default_accessor::offset
constexpr data_handle_type offset( data_handle_type p, std::size_t i ) const noexcept; |
||
等价于 return p + i;。
[edit] 示例
本节内容不完整 原因:没有示例 |