ベクタの作成
CoddyのC++ジャーニー「論理と制御フロー」セクションの一部 — レッスン 10/56。
ベクターが何であるかを理解したところで、実際にそれらを作成する方法を学びましょう。ニーズに応じて、std::vectorを宣言および初期化する方法はいくつかあります。
最も基本的な方法は、後で要素を追加できる空のベクターを作成することです。
std::vector<int> numbers;これは、整数を保持できる numbers という名前の空のベクターを作成します。アングルブラケット <int> に注目してください。これはベクターにどのようなデータ型を格納するかを伝えます。
また、初期化子リストを使用して、最初から値を持つベクトルを初期化することもできます:
std::vector<int> scores = {85, 92, 78, 96, 88};これにより、5つの整数が既に入っているベクターが作成されます。波括弧には、カンマで区切られた初期値が含まれます。
ベクタはさまざまなデータ型を保持できます。山括弧の中身を変更するだけです。例えば、テキストには std::vector<string>、小数には std::vector<double> を使用します。ベクタは柔軟性が高いため、自動リサイズの利便性が必要なデータのコレクションを格納するのに最適です。
チャレンジ
簡単あらかじめ定義された値を持つ整数のベクターを作成し、その内容を表示することで、ベクターの初期化を実演するプログラムを作成してください。
以下の入力が提供されます:
- ベクターの初期化に使用する5つの整数
プログラムは以下の手順で行ってください:
numbersという名前のstd::vector<int>を作成し、初期化リストを使用して5つの入力値で初期化します- ベクターの各要素を、以下に示す正確な形式で個別の行に出力します
- すべての要素を出力した後、ベクター内の要素の総数を出力します
以下の正確な出力形式を使用してください:
Element 0: [first value]
Element 1: [second value]
Element 2: [third value]
Element 3: [fourth value]
Element 4: [fifth value]
Vector size: 5各値を出力するには、インデックス0から4までの角括弧 [] 演算子を使用してベクター要素にアクセスします。ベクター内の要素数を取得するには、.size() メソッドを使用してください。
チートシート
std::vectorを作成するには、アングルブラケット(山括弧)内にデータ型を指定します:
std::vector<int> numbers; // 空のベクター初期化子リストを使用して、ベクターを値で初期化します:
std::vector<int> scores = {85, 92, 78, 96, 88};インデックス付きの大括弧を使用して、ベクターの要素にアクセスします:
scores[0] // 最初の要素
scores[1] // 2番目の要素.size()を使用して要素の数を取得します:
scores.size() // 要素の数を返すアングルブラケット内の型を変更することで、ベクターは異なるデータ型を保持できます:
- テキスト用の
std::vector<string> - 小数用の
std::vector<double>
自分で試してみよう
#include <iostream>
#include <vector>
using namespace std;
int main() {
// 入力値を読み込む
int val1, val2, val3, val4, val5;
cin >> val1 >> val2 >> val3 >> val4 >> val5;
// TODO: 以下にコードを記述してください
// 'numbers' という名前のベクターを作成し、入力値で初期化します
// 指定された形式で各要素を出力します
// ベクターのサイズを出力します
return 0;
}このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。