#define _CRT_SECURE_NO_WARNINGS
#include "iostream"
#include "CSocketProtocol.h"
#include "CSocketFactoryImpl.h"
#include "CEncDesProtocol.h"
#include "HwEncode.h"
#include <algorithm>
#include <vector>
#include <deque>
#include <stack>
#include <queue>
#include <list>
using namespace std;
typedef int (*pFuc)(int a, int b);
int test(int a, int b) {
cout << "test" << endl;
return a + b;
}
int test2(int a, int b) {
cout <<"test2" << endl;
return a + b;
}
int test3(int a, int b) {
cout << "test3"<< endl;
return a + b;
}
int add(int (*p)(int a, int b)) {
return p(5, 6);
}
void print(deque<int>& de) {
for (deque<int>::iterator it = de.begin(); it < de.end(); it++) {
cout << *it << " ";
}
cout << endl;
}
void main() {
//最大值優先隊列
priority_queue<int> p;
priority_queue<int, vector<int>, less<int>> p1;
//最小值優先隊列
priority_queue<int, vector<int>, greater<int>> p2;
p1.push(12);
p1.push(23);
p1.push(1);
p1.push(546);
while (p1.size() > 0) {
cout << p1.top() << " ";
p1.pop();
}
p2.push(12);
p2.push(23);
p2.push(1);
p2.push(546);
while (p2.size() > 0) {
cout << p2.top() << " ";
p2.pop();
}
printf("-------------------------");
list<int> l;
for (int i = 0; i < 10; i++) {
l.push_back(i);
}
for (list<int>::iterator it = l.begin(); it != l.end(); it++) {
cout << *it << " ";
}
cout << endl;
l.insert(l.begin(), 28);
for (list<int>::iterator it = l.begin(); it != l.end(); it++) {
cout << *it << " ";
}
cout << endl;
l.remove(4);
for (list<int>::iterator it = l.begin(); it != l.end(); it++) {
cout << *it << " ";
}
cout << endl;
printf("-------------------------");
queue<int> q;
q.push(1);
q.push(2);
q.push(3);
while (!q.empty()) {
cout << q.front() << " ";
q.pop();
}
cout << endl;
printf("-------------------------");
stack<int> s;
s.push(1);
s.push(2);
s.push(3);
while (!s.empty()) {
cout<<s.top()<<" ";
s.pop();
}
cout << endl;
printf("-------------------------");
deque<int> de;
de.push_back(1);
de.push_back(2);
de.push_back(3);
de.push_front(10);
de.push_front(20);
de.push_front(30);
print(de);
de.pop_back();
de.pop_front();
print(de);
deque<int>::iterator it = find(de.begin(), de.end(), 10);
int index = distance(de.begin(), it);
cout << "index:" << index << endl;
printf("-------------------------");
vector<int> v;
v.push_back(1);
v.push_back(2);
v.push_back(3);
v.push_back(4);
v.push_back(5);
v.push_back(6);
v.push_back(7);
for (vector<int>::iterator it = v.begin(); it < v.end(); it++) {
if (*it == 2) {
it = v.erase(it);
}
}
for (vector<int>::iterator it = v.begin(); it < v.end(); it++) {
cout << *it << " ";
}
cout << endl;
v.insert(v.begin(), 8);
for (vector<int>::iterator it = v.begin(); it < v.end(); it++) {
cout << *it << " ";
}
cout << endl;
system("pause");
}
14.C++ 其他容器
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.