2 つの標準ベクトルがあると仮定します。
vector<int> a;
vector<int> b;
また、両方に約 30 個の要素があるとします。
- ベクトル b をベクトル a の末尾に追加するにはどうすればよいですか?
汚いやり方としては、 b を反復処理して各要素を で追加する方法がありますvector<int>::push_back()
が、私はそれをやりたくありません。
ベストアンサー1
a.insert(a.end(), b.begin(), b.end());
または
a.insert(std::end(a), std::begin(b), std::end(b));
b
2 番目の方法は、配列にも使用できるため、より汎用的に適用可能なソリューションです。ただし、C++11 が必要です。ユーザー定義型を使用する場合は、ADL を使用します。
using std::begin, std::end;
a.insert(end(a), begin(b), end(b));