C++生成key-value鍵值的三種方式總結(jié)
1.前言
本篇目的:理解C++之三種key-value鍵值生成方式。
2.應(yīng)用實(shí)例
<1>.map方式
#include <iostream>
#include <vector>
#include <map>
int main() {
std::map<std::string, std::string> keyValueMap;
//v1.0
keyValueMap = { {"name", "張三"}, {"age", "20"}, {"country", "中國(guó)"} };
// 遍歷map并打印鍵值對(duì)
for (const auto& pair : keyValueMap) {
std::cout << pair.first << ": " << pair.second << std::endl;
}
std::cout << std::endl;
keyValueMap.clear();
//v2.0
keyValueMap.insert({"name","李四"});
keyValueMap.insert({"age","18"});
keyValueMap.insert({"country","China"});
//遍歷map并打印鍵值對(duì)
for (const auto& pair : keyValueMap) {
std::cout << pair.first << ": " << pair.second << std::endl;
}
std::cout << std::endl;
return 0;
}<2>.vector + pair方式
#include <iostream>
#include <vector>
#include <map>
int main() {
//vector + pair
//v1.0
std::vector<std::pair<std::string, std::string>> keyValuevt;
keyValuevt = { {"name", "王五"}, {"age", "22"}, {"country", "中國(guó)"} };
for (const auto& vv : keyValuevt) {
std::cout << vv.first << ": " << vv.second << std::endl;
}
std::cout << std::endl;
keyValuevt.clear();
//v2.0
keyValuevt.push_back({"name","Tom"});
keyValuevt.push_back({"age","10"});
keyValuevt.push_back({"countyr","China"});
for (const auto& vv : keyValuevt) {
std::cout << vv.first << ": " << vv.second << std::endl;
}
return 0;
}<3>.vector + make_pair方式
#include <iostream>
#include <vector>
#include <map>
int main() {
std::vector<std::pair<std::string, std::string>> keyValuevt;
//vector + make_pair
//v1.0
keyValuevt.push_back(std::make_pair("name", "六五"));
keyValuevt.push_back(std::make_pair("age", "21"));
keyValuevt.push_back(std::make_pair("country", "中國(guó)"));
for (const auto& vv : keyValuevt) {
std::cout << vv.first << ": " << vv.second << std::endl;
}
std::cout << std::endl;
keyValuevt.clear();
//v2.0
keyValuevt.push_back({"name","Tom"});
keyValuevt.push_back({"age","10"});
keyValuevt.push_back({"countyr","China"});
for (const auto& vv : keyValuevt) {
std::cout << vv.first << ": " << vv.second << std::endl;
}
return 0;
}到此這篇關(guān)于C++生成key-value鍵值的三種方式總結(jié)的文章就介紹到這了,更多相關(guān)C++生成key-value鍵值內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C語言的fork函數(shù)在Linux中的進(jìn)程操作及相關(guān)面試題講解
fork函數(shù)只能在類Unix的系統(tǒng)中使用,用于創(chuàng)建子線程,這里總結(jié)了C語言的fork函數(shù)在Linux中的進(jìn)程操作及相關(guān)面試題講解,先來看一下C語言程序的存儲(chǔ)空間與進(jìn)程示意:2016-06-06
C/C++?單元自動(dòng)化測(cè)試解決方案總結(jié)
這篇文章主要介紹了C/C++?單元自動(dòng)化測(cè)試解決方案總結(jié),通過利用GCC插件來實(shí)現(xiàn)提升C/C++開發(fā)者的單元效率工具解決方案,希望對(duì)大家在提升單元測(cè)試效率上有所啟發(fā)2022-06-06
C++使用ffmpeg實(shí)現(xiàn)rtsp取流的代碼
這篇文章主要介紹了C++使用ffmpeg實(shí)現(xiàn)rtsp取流,文章介紹了ffmepg采用rtsp取流流程圖,CMakeLists.txt編寫方法,通過示例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2022-04-04
C++ boost::asio編程-域名解析詳細(xì)介紹
這篇文章主要介紹了C++ boost::asio編程-域名解析詳細(xì)介紹的相關(guān)資料,這里附有實(shí)例代碼,幫助大家學(xué)習(xí)理解這部分知識(shí),需要的朋友可以參考下2016-11-11
Linux下實(shí)現(xiàn)C++操作Mysql數(shù)據(jù)庫(kù)
由于工作需要抽出一周的時(shí)間來研究C/C++訪問各種數(shù)據(jù)庫(kù)的方法,并打算封裝一套數(shù)據(jù)庫(kù)操作類,現(xiàn)在奉上最簡(jiǎn)單的一部分:在Linux下訪問MySQL數(shù)據(jù)庫(kù)。2017-05-05
C++ 靜態(tài)成員的類內(nèi)初始化詳解及實(shí)例代碼
這篇文章主要介紹了C++ 靜態(tài)成員的類內(nèi)初始化詳解及實(shí)例代碼的相關(guān)資料,需要的朋友可以參考下2017-02-02
C++非遞歸隊(duì)列實(shí)現(xiàn)二叉樹的廣度優(yōu)先遍歷
這篇文章主要介紹了C++非遞歸隊(duì)列實(shí)現(xiàn)二叉樹的廣度優(yōu)先遍歷,實(shí)例分析了遍歷二叉樹相關(guān)算法技巧,并附帶了兩個(gè)相關(guān)算法實(shí)例,需要的朋友可以參考下2015-07-07

