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 > constexprconst T& get(const array<T,N>& a )noexcept; | (3) | (C++11以上) |
template< size_t I, class T, size_t N > constexprconst 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 から読み込みます。 エラーの場合は例外を投げます (関数テンプレート) |