map
#include<map>
#include<iterator>
#include<iostream>
#include<string>
using namespace std;
int main(){
map<int, string> m;
m.insert(pair<int, string>(1,"student_wangwei"));
m.insert(pair<int,string>(2,"student_chenhuangrong"));
m.insert(pair<int,string>(3,"student_yaxian"));
m.insert(pair<int,string>(4,"student_bowang"));
m.insert(map<int,string>::value_type(5,"student_wangzefan"));
m.insert(map<int,string>::value_type(6,"student_luzhicheng"));
m[7] = "student_liyang";
m[8]= "student_hahaha";
map<int,string>::iterator iter;
for(iter = m.begin();iter!=m.end();iter++){
cout<<iter->first<<" "<<iter->second<<endl;
}
return 0;
}
set
#pragma warning(diable:4786)
#include<set>
#include<iostream>
using namespace std;
int main(){
set<int> c1;
int ai[] = {0,1,2,3};
set<int> c2(ai,ai+4);
set<int> c3(c2);
set<int>::iterator Iter;
set<int>::reverse_iterator RevIter;
if(c1.empty()){
cout<<"set c1 is empty"<<endl;
}else{
cout<<"set c1 is not empty"<<endl;
}
cout<<"c2 (using begin end) = ";
for( Iter = c2.begin(); Iter != c2.end(); Iter++){
cout<<*Iter<<" ";
}
cout<<endl;
cout<<"c2 (using rbegin rend) =";
for(RevIter = c2.rbegin(); RevIter != c2.rend(); RevIter++) {
cout<<*RevIter<<" ";
}
cout<<endl;
set<int>::const_iterator constIter = c1.find(3);
if(constIter != c1.end()){
cout<<"c1 contains element 3, *constIter ="<<*constIter<<endl;
}
cout<<"c1.size() = "<<c1.size()<<endl;
c1.insert(4);
c2.swap(c1);
cout<<"The last element of c2 = "<<*(c2.rend())<<endl;
c1.clear();
cout<<"After callingn c1.clear(), c1.size() ="<<c1.size()<<endl;
cout<<"*(c2.upper_bound(3))"<<*(c2.upper_bound(3))<<endl;
cout<<"*(c2.lower_bound(3))"<<*(c2.lower_bound(3))<<endl;
if(c3.erase(1) != 0){
cout<<"c3 does not contrain 1 anymore"<<endl;
}else{
cout<<"No element in c3 match key 1"<<endl;
}
// if((c2.erase(c2.begin())) != c2.end()){
// cout<<"c2 does not contain 0 anymore"<<endl;
// }else{
// cout<<"no elements in c2 match key 0"<<endl;
// }
//
c3.erase(c3.begin(), c3.end());
cout<<"after c2.erase(c3.begin(),c3.end()), c3.size() = "<<c3.size()<<endl;
return 0;
}
list
#include<iostream>
#include<list>
#include<algorithm>
#include<iterator>
using namespace std;
void printLists(const list<int>& l1, const list<int>& l2){
cout<<"list1:";
copy(l1.begin(),l1.end(),ostream_iterator<int>(cout, " "));
cout<<endl<<"list2:";
copy(l2.begin(),l2.end(),ostream_iterator<int>(cout, " "));
cout<<endl<<endl;
};
int main(){
list<int> list1, list2;
for(int i=0;i<6;i++) {
list1.push_back(i);
list2.push_front(i);
}
printLists(list1,list2);
list2.splice(find(list2.begin(),list2.end(),3),list1);
printLists(list1,list2);
list2.splice(list2.end(),list2,list2.begin());
printLists(list1, list2);
list2.sort();
list1 = list2;
list2.unique();
printLists(list1, list2);
list1.merge(list2);
printLists(list1, list2);
return 0;
}
网友评论