名稱空間
變體
操作

std::default_accessor

來自 cppreference.com
< cpp‎ | 容器‎ | mdspan
 
 
 
 
定義於標頭檔案 <mdspan>
template< class ElementType >
class default_accessor;
(C++23 起)

當未提供使用者指定的訪問器策略時,std::default_accessor 類模板的特化是 std::mdspan 使用的預設 AccessorPolicy

default_accessor 的每個特化都遵循 semiregular,並且是 TriviallyCopyable 的。

目錄

[編輯] 模板引數

ElementType - 元素型別。必須是既非抽象類型別也非陣列型別的完整物件型別。否則,程式將格式錯誤。

[編輯] 成員型別

成員型別 定義
offset_policy default_accessor
element_type ElementType
reference ElementType&
data_handle_type ElementType*

[編輯] 成員函式

(建構函式)
構造一個 default_accessor
(公開成員函式)
訪問
返回引數提供的第 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;

[編輯] 示例