File tree Expand file tree Collapse file tree 3 files changed +56
-3
lines changed
Expand file tree Collapse file tree 3 files changed +56
-3
lines changed Original file line number Diff line number Diff line change 2626
2727| 名前 | 説明 | 対応バージョン |
2828| ------| ------| -------|
29- | [ ` default_accessor ` ] ( mdspan/default_accessor.md.nolink ) | デフォルト要素アクセサ (class template) | C++23 |
29+ | [ ` default_accessor ` ] ( mdspan/default_accessor.md ) | デフォルト要素アクセサ (class template) | C++23 |
3030
3131
3232## 多次元配列ビュー
Original file line number Diff line number Diff line change 1+ # default_accessor
2+ * mdspan[ meta header]
3+ * class template[ meta id-type]
4+ * std[ meta namespace]
5+ * cpp23[ meta cpp]
6+
7+ ``` cpp
8+ namespace std {
9+ template<class ElementType >
10+ class default_accessor;
11+ }
12+ ```
13+
14+ ## 概要
15+ `default_accessor`は、多次元配列ビュー[`mdspan`](mdspan.md)の要素アクセスデフォルト動作を定義する。
16+
17+ `ElementType`は抽象クラス型もしくは配列型のいずれでもない完全型であること。
18+
19+ `default_accessor`はアクセサポリシー要件を満たす。
20+ また`default_accessor`は[トリビアルコピー可能](/reference/type_traits/is_trivially_copyable.md)であり、[`semiregular`](/reference/concepts/semiregular.md)のモデルである。
21+
22+ ## メンバ関数
23+
24+ | 名前 | 説明 | 対応バージョン |
25+ |------|------|----------------|
26+ | [`(constructor)`](default_accessor/op_constructor.md.nolink) | コンストラクタ | C++23 |
27+ | `(destructor)` | デストラクタ | C++23 |
28+ | [`access`](default_accessor/access.md.nolink) | 指定オフセット位置にある要素へアクセスする | C++23 |
29+ | [`offset`](default_accessor/offset.md.nolink) | 指定オフセット位置のハンドルを取得する | C++23 |
30+
31+
32+ ## メンバ型
33+
34+ | 名前 | 説明 | 対応バージョン |
35+ |------|------|----------------|
36+ | `offset_policy` | `default_accessor` | C++23 |
37+ | `element_type` | `ElementType` | C++23 |
38+ | `reference` | `ElementType&` | C++23 |
39+ | `data_handle_type` | `ElementType*` | C++23 |
40+
41+
42+ ## バージョン
43+ ### 言語
44+ - C++23
45+
46+
47+ ## 関連項目
48+ - [`mdspan`](mdspan.md)
49+
50+
51+ ## 参照
52+ - [P0009R18 MDSPAN](https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p0009r18.html)
53+ - [Reddit - Why is mdspan::offset_policy needed?](https://www.reddit.com/r/cpp/comments/cgc37m/why_is_mdspanoffset_policy_needed/)
Original file line number Diff line number Diff line change @@ -14,7 +14,7 @@ namespace std {
1414}
1515```
1616* layout_right[link layout_right.md.nolink]
17- * default_accessor[link default_accessor.md.nolink ]
17+ * default_accessor[link default_accessor.md]
1818
1919## 概要
2020`mdspan`は、任意のメモリブロックに対して多次元配列のようにアクセスする機能を提供するクラスである。
@@ -23,7 +23,7 @@ namespace std {
2323
2424- [`is_nothrow_move_constructible_v`](/reference/type_traits/is_nothrow_move_constructible.md)`<MDS>`が`true`、かつ
2525- [`is_nothrow_move_assignable_v`](/reference/type_traits/is_nothrow_move_assignable.md)`<MDS>`が`true`、かつ
26- - [`is_nothrow_swappable_v`](/reference/type_traits/is_nothrow_swappable.md)`<MDS>`が1 `true`となる。
26+ - [`is_nothrow_swappable_v`](/reference/type_traits/is_nothrow_swappable.md)`<MDS>`が `true`となる。
2727
2828そのメンバ型`accessor_type`, `mapping_type`, `pointer`が[トリビアルコピー可能](/reference/type_traits/is_trivially_copyable.md)であるとき、`mdspan`の特殊化もトリビアルコピー可能である。
2929
You can’t perform that action at this time.
0 commit comments