1樓:搞笑點
1.map的建構函式
mapmapstudent;
2. 資料的插入
在構造map容器後
第一種:用insert函式插入pair資料#pragma warning (disable:4786) )#include
#include
#include
using namespace std;
int main()
else
2樓:疾似雲流
是c++。
例子:#include "textquery.h"
namespace cqode}//
void textquery::buildmap()}}//std::settextquery::runquery(std::string &word)
std::settemp = m_wordmap[word];
return temp;}//
std::string textquery::getline(lineno nline)}
3樓:無謂之光
你baidu一下比在這裡等答案來的快。
關於c++中 map 的意義以及用法
4樓:匿名使用者
map,顧名思義就是地圖。其實就是key,value的對應。
當你需要快速的獲取對應key的value的時候,就可以使用map了。例如一個人是有名字,但是這個人還有其他的屬性,例如年齡,性別等等。這個人就會被封裝為一個物件。
如果有很多個人,我們需要快速的根據一個人的名字獲取對應名字的物件,這個時候map就有用了。如果採用陣列,我們需要遍歷整個陣列,才可以根據名字找到這個人。如果是map(以名字為key,以人的物件為value),就可以直接根據名字得到這個物件,就不需要遍歷操作了。
c++的map是採用紅黑樹實現的,因此獲取value的效率為lgn級別。
具體怎麼使用的,請上網看一個部落格的。特別簡單,就是幾個插入,刪除,讀取,賦值的操作。自己寫個demo,測試一下就會明白的。
c++map有什麼用
5樓:匿名使用者
map是stl容器,內部實現是紅黑樹,插入較慢,但是查詢很快iterator是指stl的迭代器,可以簡單的看做是元素指標map::iterator it = tempmap.begin();
表示指向tempmap第一個元素,你用 it->first 和 it->second,就能直接呼叫元素了
6樓:匿名使用者
mapmap_;
提供一個具有鍵值對(type1,type2)的容器,相關例項可以看看網上的例項demo。。。
c++在標頭檔案中使用map為什麼不行?
7樓:匿名使用者
map是c++的標準庫函式
所以必須要先宣告
using namespace std;
如**#include
#include
using namespace std;
void main()
8樓:匿名使用者
就是名稱空間的問題。
在使用map前要麼using namespace std; 要麼 std::map
9樓:匿名使用者
1、map是stl容器中的一種,屬於關聯性容器。以key value的形式儲存。key必須唯一。如果重複則插入失敗。插入後按照key預設排序。必須要先宣告名稱空間:
using namespace std;
2、例如:
#include
#include
using namespace std;
void main()
10樓:驀然
是不是應該寫成 include
希望你能採納
c++ 關於map的使用
11樓:匿名使用者
這個是引用,就是說refpriv是role.priv的一個引用,你也可以理解為是role.priv的一個別名
他們兩個代表同一塊記憶體
和map的概念沒有關係
c++裡map
12樓:匿名使用者
#include
#include
#include
using namespace std;
int main()
return 0;}
13樓:掌如曼
遍歷方法如下:
mapmymap;
auto it = mymap.begin();
for(;it != mymap.end();++it)cout << it->first.
c_str() << " " << it->second.c_str() << endl;
怎麼在 c++ 的 map 裡面 放 key-map鍵值對
14樓:匿名使用者
1、map,顧名思義就是地圖。其實就是key,value的對應的對映。
當需要快速的獲取對應key的value的時候,就可以使用map了。例如一個人是有名字,但是這個人還有其他的屬性,例如年齡,性別等等。這個人就會被封裝為一個物件。
如果有很多個人,我們需要快速的根據一個人的名字獲取對應名字的物件,這個時候map就有用了。如果採用陣列,我們需要遍歷整個陣列,才可以根據名字找到這個人。如果是map(以名字為key,以人的物件為value),就可以直接根據名字得到這個物件,就不需要遍歷操作了。
c++的map是採用紅黑樹實現的,因此獲取value的效率為lgn級別。
2、例子:
map> mymap;
mapchildmap1;
childmap1.insert("childmap1item1","item1");
childmap1["chilemap1item2"]="item2";//若沒找到key為chilemap1item2的元素就則新增一個
mapchildmap2;
childmap2.insert(map::value_type("childmap2item1","item1"));
mymap.insert("childmap1",childmap1);
mymap.insert("childmap2",childmap2);
//若想從mymap中找到childmap1的key為"chilemap1item2"的元素,可以這麼做
map>::iterator it = mymap.find("childmap1");
map::iterator childiterator = it->second.find("chilemap1item2");
string value=childiterator->second;//value即為所求值
15樓:匿名使用者
#include
#include
#include
#include
using namespace std;
typedef mapmy_map;
void main()
16樓:匿名使用者
方法有三種,
1.通過pair鍵值對插入。mapobj.insert(pair("a","1"));
2.通過value_type插入。mapobj.insert(map::value_type(1,"a"));
3.通過陣列的方式插入。
mapobj[1] = "a";
mapobj[2] = "b";
任何時候都不要忘記求助msdn,最後祝你好運。
17樓:義昀欣
給你一個例子,你參照一下。
cmapmymap;
// add 10 elements to the map.
for (int i=0;i < 10;i++)mymap.setat( i, cpoint(i, i) );
// remove the elements with even key values.
position pos = mymap.getstartposition();
int nkey;
cpoint pt;
while (pos != null)
關於c 中map的排序問題
嗯。頂樓上兩位的發言。我也說一下愚見 如果你只是想要簡單的排序,那麼多了。鍊表本身的 sort 通用庫的通用演算法 sort 還有優先佇列等。都是有排序功能的。如果你非得要用 map 鍵值對,那麼我就不明白了,為什麼是要拿 value 排序?如果真的是要先用 map 存資料,然後想 按照 value...
關於C中的timer控制元件,C 中,關於Timer控制元件的說法正確的是 選2項
會完成。但是需要注意 1.system.windows.forms.timer 是單執行緒的,它只在ui執行緒中執行,定時精度約55ms,當前的事件沒處理完成時,下一次事件不會觸發 過久地處理會導致介面假死。2.system.threading.timer 是多執行緒的,觸發的事件在threadpo...
關於C 的getline疑問,C 中getline 是什麼意思?
試試cin.getline s1,5,n c 中getline 是什麼意思?istream getline istream string 都是將輸入流的字元讀入到字串中,上面那個以你設定的終結符為結束標誌,下面那個以換行符 n 作為結束。如果讀到eof或者遇到錯誤也會結束。getline是c 中的乙...