map 自定義結構 儲存 STL

2021-06-11 01:25:47 字數 559 閱讀 4234

map如何儲存自己使用的物件進行儲存~~

只需要過載比較函式就可以了。例子如下

#include#include#include#include using namespace std;

struct node;

bool operator < (const node & p1 ,const node & p2) //過載比較函式 重要

int main()

{int n;

mapmymap;//定義自己的map

string s,str;

int i;

for(i = 0 ; i < 5 ; i++)

{ node p;

p.x = p.y =0;

cin>>p.x>>p.y;

mymap[p]++; //直接使用就可以進行定位了

//cout<::iterator ite;

for(ite = mymap.begin();ite != mymap.end(); ite++)

cout<< "x = "first.y<<" "

map自定義比較函式

from template class alloc alloc 第乙個引數key是關鍵字型別 第二個引數t是值型別 第三個引數compare是比較函式 仿函式 第四個引數是記憶體配置物件 map中的關鍵字,起碼必須有 這個比較操作符。我們知道,int,float,enum,size t等等簡單關鍵字...

STL自定義比較器

struct person 自定義的比較器 struct comparebyage sort vec.begin vec.end comparebyage 排序傳入我們自定義的比較器map內部的實現使用的是樹,不能夠直接排序,我們可以將其放在乙個vector中,然後自定義乙個比較器去排序 map m...

STL自定義排序小結

我們要先明白在哪個地方需要使用自定義排序 sort對vector容器排序時,第三個引數為乙個函式,函式內容即為排序的要求。1 當對可直接比較變數排序時,預設為公升序 include using namespace std 排序函式,自定義為降序 bool cmp2 const int a,const...