首先從乙個例子開始:
定義乙個map,關鍵字是家族的姓,值是乙個vector,儲存家中孩子們的名字。實現新增新的家族以及向已有家庭中新增新的孩子。
#include
#include
#include
#include
using
namespace
std;
int main()
// for(map>::iterator it=family.begin();it != family.end();++it)
for(auto it=family.begin(); it != family.end(); ++it)
從上面**中可以看到,可以直接使用key作為map中的關鍵字來查詢相關的鍵值對;也可以直接使用key來新增資料成員;
cin>>last_name;
cin>>first_name;
family[last_name].push_back(first_name);
其中,last_name就是key,直接使用family[last_name]就可以找到對應的value型別;而在本例中,value又是乙個vector型別,使用vector中基本的插入操作push_back來加入到vector中;
例如:
map< int ,string > maplive;
1.maplive.insert(pair< int,string >(102,」aclive」));
2.maplive.insert(map< int,string >::value_type(321,」hai」));
3.maplive[112]=」april」; //map中最簡單最常用的插入新增!
category新增成員變數
oc的category是乙個非常好用的特性,它允許你在不改變原始碼的情況下擴充套件類的一些功能特性,從而能更好地組織你地 但是使用category有乙個很大地限制,不能在category裡新增成員變數,這個限制較大地限制了category的使用,當然使用extension可以往類裡面新增成員變數,但...
Category支援新增成員變數
一 類別的作用?分類 category 是有名稱的,分類可以在不修改原來類模型的基礎上拓充方法,不能擴充成員變數 3個作用 1 將類的實現分散到多個不同檔案或多個不同框架中。並且如果類別和原來類中的方法產生名稱衝突,則類別將覆蓋原來的方法,因為類別具有更高的優先順序。分類依賴類而存在,沒有類也就沒有...
向List中新增map被覆蓋
1.這裡放入list裡的是不同的map,雖然map d是同乙個map,但是指向了不同的位址 當我們把alist.get i 賦值給dmap的時候,就已經把dmap的位址指向了對應的alist中的某個map,例如d a,這時a和d是完全相等的兩個物件,他們在棧上的引用位址是相同的,當a賦值給d的時候,...