这两个插入c ++的版本有什么区别map:
map<string,double> myMap;
// version 1
myMap["david"] = 123.123;
// version 2
myMap.insert(std::make_pair("david" ,123.123));
Run Code Online (Sandbox Code Playgroud)
问候
如果密钥已存在,则第一个将更新值,但如果密钥已存在,则第二个将不更新它.
std::map<string,double> myMap;
//working with operator[]
myMap["david"] = 123.0; //inserts
myMap["david"] = 98.0; //updates
std::cout << myMap["david"] << std::endl; //prints 98.0 (updated value)
//working with insert
myMap.insert(std::make_pair("nawaz", 100.0)); //inserts
myMap.insert(std::make_pair("nawaz", 878.0)); //no update
std::cout << myMap["nawaz"] << std::endl; //prints 100.0 (old value)
Run Code Online (Sandbox Code Playgroud)
该insert函数返回std::pair<iterator,bool>.该对的布尔值告诉您插入是否成功.
现在阅读文档以获取更多详细信息:
| 归档时间: |
|
| 查看次数: |
118 次 |
| 最近记录: |