編集: multimap に重複 キーを含めることができない理由を尋ねているわけではないことに注意してください。
重複するキーと値のペアを許可する multimap の背後にある理論的根拠は何ですか? (ないキー)
#include <map>
#include <string>
#include <iostream>
int
main(int argc, char** argv)
{
std::multimap<std::string, std::string> m;
m.insert(std::make_pair("A", "B"));
m.insert(std::make_pair("A", "B"));
m.insert(std::make_pair("A", "C"));
std::cout << m.size() << std::endl;
return 0;
}
これは 3 を出力しましたが、これは私を少し驚かせました。
直観的には、 ( とは対照的に) が常にマップを変更するとは限らないC++ のstd::map
動作とは一致しません。insert
operator[]
その背後には根拠がありますか、それとも恣意的なものですか?