由于unordered_set需要能够比较元素,所以我们需要重载结构体的等于运算符。 下面是一个实现了自定义的unordered_set的Person结构体的例子: #include<iostream>#include<string>#include<unordered_set>usingnamespacestd;structPerson{stringname;intage;booloperator==(constPerson&rhs)const{return(name==rhs....
};voidhashset_rect(){ cout<<"***"<<endl; unordered_set < Rect, Rect_hash> rectS; rectS.insert(Rect(0,0,"rect0")); rectS.insert(Rect(1,1,"rect1")); rectS.insert(Rect(2,2,"rect2")); rectS.insert(Rect(3,3,"rect3"));for(autoit = rectS.begin(); it != rectS.end...
cout <<"***unorderset_node***"<< endl; cout <<"新建***"<< endl; unordered_set <nodeset*> sp; nodeset* findnode =NULL; nodeset* deletenode =NULL;for(inti =0; i <5; i++) { nodeset* node =newnodeset(i); sp.insert(node);if(i ==2) { findnode = node; }if(i ==3...
C++-STL(4)-unordered_set-自定义类型讲的自定义对象中的成员变量是基础数据类型。 本篇实现的是成员变量是自定义对象, key值为自定义对象指针。 注意点:1.创建:重载=,重载<, 哈希函数 2.删除时 要delete 和置空。 class nodeset { public: int m_value; nodeset* next; nodeset(int val) { m_...