stack<int>s;
s.push(1);
s.push(2);
s.push(3);
cout << "Top: " << s.top() << endl;
cout << "Size: " << s.size() << endl;
s.pop();
cout << "Size: " << s.size() << endl;
if(s.empty()) cout << "Is empty" << endl;
else cout << "Is not empty" << endl;
Top: 3
Size: 3
Size: 2
Is not empty
int a[10]={12,45,234,64,12,35,63,23,12,55};
char *str="Hello World";
vector <int> vec1(a, a+10); //初值为数组a
vector <char> vec2(str, str+strlen(str)); //初值为字符串str
cout<<"vec1: ";
vector<int> :: iterator p;
for (p=vec1.begin(); p!=vec1.end(); ++p)
cout<<*p<<' ';
cout<<'\n'<<"vec2: ";
vector <char> :: iterator p1;
for (p1=vec2.begin(); p1!=vec2.end();++p1)
cout<<*p1;
vec1: 12 45 234 64 12 35 63 23 12 55
vec2: Hello World
map <string,float,less<string> > c;
c.insert (make_pair("Cafe",7.75));
c.insert (make_pair("Banana",1.72));
c.insert (make_pair("Pizza",30.69));
c["Wine"]=15.66;
map <string,float> :: iterator pos;
for(pos = c.begin(); pos!=c.end(); pos++)
cout<<pos->first<<" "<<pos->second<<endl;
c.clear();
Banana 1.72
Cafe 7.75
Pizza 30.69
Wine 15.66
list<int> mylist (8,100); //8个100
mylist.push_back (300); //表尾插入
list<int> :: iterator it = mylist.begin(); //删除元素
mylist.erase(it); //遍历输出
for (it=mylist.begin(); it!=mylist.end(); ++it)
cout << " " << *it;
cout << endl;
100 100 100 100 100 100 100 300
set <string> str;
set <string>::iterator pos;
str.insert("apple");
str.insert("orange");
str.insert("banana");
str.insert("grapes");
for (pos=str.begin(); pos!=str.end(); pos++)
cout<<*pos<<" ";
cout<<endl;
str.clear();
apple banana grapes orange
queue <int> q;
q.push(1); q.push(2); q.push(3); q.push(9);
cout<<q.size()<<endl; //返回队例元素数量
cout<<q.empty()<<endl; //判断队列是否为空
cout<<q.front()<<endl; //读取队首元素
cout<<q.back()<<endl; //读取队尾元素
//所有元素出列,即删除所有元素
while(q.empty()!=true)
{
cout<<q.front()<<" ";
q.pop(); //删除队首元素
}
4
0
1
9
1 2 3 9
//定义结构体
struct info
{
string name;
float score;
bool operator < (const info &a) const
{
return a.score<score;
}
};
//优先队列
priority_queue <info> pq;
info in;
in.name="Jack"; //学生1
in.score=68.5;
pq.push(in);
in.name="Bomi"; //学生2
in.score=18.5;
pq.push(in);
in.name="Peti"; //学生3
in.score=90;
pq.push(in);
//输出
while(!pq.empty())
{
cout<<pq.top().name
<<": "<<pq.top().score<<endl;
pq.pop();
}
Bomi: 18.5
Jack: 68.5
Peti: 90