- linalg[meta header]
- class template[meta id-type]
- std::linalg[meta namespace]
- cpp26[meta cpp]
namespace std::linalg {
template<class ScalingFactor, class NestedAccessor>
class scaled_accessor;
}
- NestedAccessor[link /reference/mdspan/AccessorPolicy.md]
scaled_accessor
は、多次元配列ビューmdspan
の全要素をスカラー倍した多次元配列ビューを表現するアクセサポリシークラスである。
scaled_accessor
クラステンプレートは、要素スカラー倍操作scaled
の戻り値型として利用される。
戻り値mdspad
の要素型は読み取り専用となる。
scaled_accessor
クラステンプレートは、下記の説明専用メンバ変数を保持する。
scaling-factor
:ScalingFactor
型のスケーリング係数nested-accessor
:NestedAccessor
型の入れ子アクセサポリシー
element_type
が適格な型であることis_copy_constructible_v
<reference> == true
is_reference_v
<element_type> == false
ScalingFactor
がsemiregular
のモデルであることNestedAccessor
がアクセサポリシー要件を満たす
名前 | 説明 | 対応バージョン |
---|---|---|
(constructor) |
コンストラクタ | C++26 |
(destructor) |
デストラクタ | C++26 |
access |
指定オフセット位置にある要素へアクセスする | C++26 |
offset |
指定オフセット位置のハンドルを取得する | C++26 |
scaling_factor |
スケーリング係数scaling-factor を取得する |
C++26 |
nested_accessor |
入れ子アクセサポリシーnested-accessor を取得する |
C++26 |
名前 | 説明 | 対応バージョン |
---|---|---|
element_type |
add_const_t <decltype(declval<ScalingFactor>() * declval<NestedAccessor::element_type>())> |
C++26 |
reference |
remove_const_t <element_type> |
C++26 |
data_handle_type |
NestedAccessor::data_handle_type |
C++26 |
offset_policy |
scaled_accessor<ScalingFactor, NestedAccessor::offset_policy> |
C++26 |
- C++26
- Clang: ??
- GCC: ??
- ICC: ??
- Visual C++: ??