C++ STL コンテナーの要素にアクセスするにはどうすればよいですか?これを行うにはいくつかの方法があります: コンテナを走査する: イテレータ範囲ベースの for ループを使用して特定の要素にアクセスする: インデックス (添え字演算子 []) を使用する キー (std::map または std::unowned_map) を使用する
C++ 標準テンプレート ライブラリ (STL) は、データの効率的な保存と管理のためのさまざまなコンテナーを提供します。 STL を効果的に利用するには、これらのコンテナ内の要素にアクセスする方法を理解することが重要です。
コンテナを走査してその要素にアクセスするには、次のメソッドがあります:
// 使用迭代器遍历 vector vector<int> v = {1, 2, 3}; for (vector<int>::iterator it = v.begin(); it != v.end(); ++it) { cout << *it << endl; }
// 使用基于范围的 for 循环遍历 vector vector<int> v = {1, 2, 3}; for (int& x : v) { cout << x << endl; }
コンテナを走査することに加えて、インデックスまたはキーによって特定の要素に直接アクセスすることもできます:
// 使用下标访问 vector 中的元素 vector<int> v = {1, 2, 3}; cout << v[0] << endl; // 输出 1
std::map
または std::unowned_map
で [] を使用できます。
演算子または at()
メソッド。 std::map
或 std::unordered_map
中的 []
运算符或 at()
方法。// 使用键访问 map 中的元素 map<string, int> m; m["John"] = 30; cout << m["John"] << endl; // 输出 30
假设我们有一个存储学生成绩的 std::vector
vector<int> grades = {90, 85, 95, 88};
実際的なケース
std::vector
があるとします: // 使用基于范围的 for 循环遍历和修改 vector for (int& grade : grades) { // 将每个成绩增加 5 grade += 5; }
範囲ベースの for ループを使用してこれらの要素にアクセスし、変更する方法は次のとおりです:
rrreee🎜結論 🎜🎜C++ STL コンテナーの要素にアクセスする方法を理解することは、これらのコンテナーを効果的に使用するために重要です。使用しているコンテナの種類に応じて、イテレータ、範囲ベースの for ループ、添字演算子、またはキーを使用できます。 🎜以上がC++ STL コンテナ内の要素にアクセスするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。