C++でのstd::mapへの要素追加の方法は何ですか?
C++のstd::mapのinsert関数は、キーの値に従って並び替えて挿入します。挿入操作はキーの順序に従って要素を整列された位置に挿入します。
具体的に言うと、std::mapに要素を挿入する際、insert関数を使用すると、キーの大きさ順に並べ替えられます。もし挿入しようとするキーがすでにmapに存在する場合、挿入操作はmapの内容を変更しません。もし挿入しようとするキーがmapに存在しない場合、そのキーと値のペアが正しい並び順でmapに挿入されます。
std::mapのinsert関数を使用してソートされた挿入を行う例を以下に示します。
#include <iostream>
#include <map>
int main() {
std::map<int, std::string> myMap;
// 使用insert函数进行排序插入
myMap.insert(std::make_pair(1, "one"));
myMap.insert(std::make_pair(3, "three"));
myMap.insert(std::make_pair(2, "two"));
// 遍历输出map
for (const auto& pair : myMap) {
std::cout << pair.first << ": " << pair.second << std::endl;
}
return 0;
}
結果は次のようになります:
1: one
2: two
3: three
要点は、挿入操作はキーのサイズ順に要素を挿入し、キーでソートされた効果を実現することです。