std::get(std::array)
提供: cppreference.com
template< size_t I, class T, size_t N > constexpr T& get( array<T,N>& a ) noexcept; |
(1) | (C++11以上) |
template< size_t I, class T, size_t N > constexpr T&& get( array<T,N>&& a ) noexcept; |
(2) | (C++11以上) |
template< size_t I, class T, size_t N > constexpr const T& get( const array<T,N>& a ) noexcept; |
(3) | (C++11以上) |
template< size_t I, class T, size_t N > constexpr const T&& get( const array<T,N>&& a ) noexcept; |
(4) | (C++17以上) |
配列から I
番目の要素を取り出します。
I
は範囲 [0, N)
内の整数値でなければなりません。 これは at() や operator[] と異なり、コンパイル時に強制���れます。
目次 |
[編集] 引数
a | - | 内容を取り出す配列 |
[編集] 戻り値
a
の I
番目の要素を指す参照。
[編集] 計算量
一定。
[編集] ノート
C++14 以降、このオーバーロードは constexpr としてマークされています。
[編集] 例
Run this code
#include <iostream> #include <array> int main() { std::array<int, 3> arr; // set values: std::get<0>(arr) = 1; std::get<1>(arr) = 2; std::get<2>(arr) = 3; // get values: std::cout << "(" << std::get<0>(arr) << ", " << std::get<1>(arr) << ", " << std::get<2>(arr) << ")\n"; }
出力:
(1, 2, 3)
[編集] 関連項目
指定された要素にアクセスします (パブリックメンバ関数) | |
境界チェック付きで指定された要素にアクセスします (パブリックメンバ関数) | |
タプルの指定された要素にアクセスします (関数テンプレート) | |
(C++11) |
pair の要素にアクセスします (関数テンプレート) |
(C++17) |
指定されたインデックスまたは型 (一意な場合) の値を variant から読み込みます。 エラーの場合は例外を投げます (関数テンプレート) |