----------------
ユーザー: C++ でのベクターの使用法を要約します。
----------------
アシスタント: C++ では、vector は動的配列 (可変サイズ配列とも呼ばれます) を定義するために使用されるテンプレート クラスです。ベクター タイプを使用する場合、そのテンプレート パラメーターを指定して、ベクター内の要素のタイプを定義できます。ベクトル クラスの一般的な使用法をいくつか示します。 ベクトル オブジェクトの作成: デフォルトのコンストラクターを使用して空のベクトルを作成することも、要素の数と要素の値を指定したコンストラクターを使用して初期値を持つベクトルを作成することもできます。以下に続きます:
vector<int> myVec; // 创建一个空向量
vector<int> myVec2(5, 0); // 创建一个包含5个元素,每个元素的值为0的向量
ベクトル内の要素へのアクセス:次のように添え字演算子 [] または at() 関数を使用して、ベクトル内の要素にアクセスできます。
myVec[0] = 10; // 将第一个元素的值设置为10
myVec.at(1) = 20; // 将第二个元素的值设置为20
int val = myVec[2]; // 获取第三个元素的值
ベクトルの末尾に要素を追加する:次のように、push_back() 関数を使用して、ベクトルの末尾に要素を追加できます。
myVec.push_back(30); // 在末尾添加一个值为30的元素
ベクトルのサイズを取得する:次のように、size() 関数を使用してベクトル内の要素の数を取得できます。
int count = myVec.size(); // 获取向量中元素的数量
ベクトル内の要素の反復:次のように、for ループまたは反復子を使用して、ベクトル内の要素を反復できます。
// 使用 for 循环遍历 vector
for (int i = 0; i < myVec.size(); i++) {
cout << myVec[i] << " ";
}
// 使用迭代器遍历 vector
for (vector<int>::iterator it = myVec.begin(); it != myVec.end(); it++) {
cout << *it << " ";
}
ベクター内の要素を空にする:次のように、clear() 関数を使用してベクター内のすべての要素を削除できます。
myVec.clear(); // 删除 vector 中的所有元素
これらは、vector クラスの一般的な使用法の一部です。ベクトルを使用すると、メモリを手動で管理することなく、動的配列を簡単に操作できます。
-------------------------------------------------- ----------------------------------
ユーザー: ベクトルを使用して整数の 2 次元配列を作成する方法
-------------------------------------------------- -----------------------------------
#include <vector>
using namespace std;
int main() {
// 创建一个 3 行 4 列的二维数组
vector<vector<int> > myVec(3, vector<int>(4, 0));
// 对二维数组进行赋值
myVec[0][0] = 1;
myVec[1][2] = 2;
myVec[2][1] = 3;
// 输出二维数组
for (int i = 0; i < myVec.size(); i++) {
for (int j = 0; j < myVec[i].size(); j++) {
cout << myVec[i][j] << " ";
}
cout << endl;
}
return 0;
}
上記のコードでは、まず 3 行 4 列のサイズの 2 次元配列を作成しmyVec
、そのすべての要素を 0 に初期化します。次に、添え字演算子を使用して要素に[]
アクセスし、値を割り当てます。myVec
最後に、二重ループを使用して 2 次元配列全体を走査し、そのすべての要素を出力します。
vector
型をネストすることで、任意の次元の配列を柔軟に作成できることに注目してください。たとえば、3 次元配列を作成できます。この方法は上記の 2 次元配列と似ており、ネストされた にvector
別の配列をネストするだけですvector
。