[問題] 用struct作為map的key,value

看板C_and_CPP作者 (藍色的冰)時間16年前 (2010/01/17 14:13), 編輯推噓1(105)
留言6則, 2人參與, 最新討論串1/3 (看更多)
假設我定義兩個結構及一個map: typedef struct i_test { unsigned int ii1; unsigned int ii2; unsigned int ii3; }; typedef struct v_test { unsigned int vv1; unsigned int vv2; }; typedef map<i_test, v_test> testMap; 然後: i_test itest; v_test vtest; testMap ttMap; ttMap.insert(make_pair(itest, vtest)); //有發生錯誤。 -- 我稍微google了一下似乎在key的i_test內要多加入 operator < 的多載定義, 好讓map瞭解如何去比較i_test的大小。 不過這部份我還是看不大懂要怎麼去定義:( ps.程式需求是只要有不同的(ii1, ii2, ii3)資料就要insert一個新的元素放到map中。 謝謝版友們解惑:) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.38.62.117

01/17 14:36, , 2F
話說 C++的class和struct除了預設的存取設定外 還有哪些
01/17 14:36, 2F

01/17 14:37, , 3F
不同阿@@?
01/17 14:37, 3F

01/17 15:24, , 4F
沒有不同
01/17 15:24, 4F

01/17 15:31, , 5F
所以又是一個C語言的包袱嗎...為什麼不設計成跟C#一樣
01/17 15:31, 5F

01/17 15:32, , 6F
讓struct可以有減重的效果@@?
01/17 15:32, 6F
文章代碼(AID): #1BKggYI1 (C_and_CPP)
文章代碼(AID): #1BKggYI1 (C_and_CPP)