//顺序容器:vector list deque
//顺序容器适配器:stack queue priority_queue
#include<vector>
#include<list>
#include<deque>
#include<iostream>
#include<string>
#include "标头.h"
#include "标头1.h"
#include "foo.h"
using namespace std;
int main()
{
vector<string> svec;//默认的构造函数创建的
svec.push_back("hello");
svec.push_back("sorld");
svec.push_back("wordls");
list<int> list;
vector<Dog> dogvec;
vector<Cat> catlist;
vector<int> ivec;
vector<int> ivec2(ivec);//必须用同等类型的初始化同等类型的
list<string> m;
list<string> slist(svec.begin(), svec.end());//用迭代器把数据拿出来初始化另外一个列表
vector<string>::iterator mid = svec.begin() + svec.size()/2;
deque<string> front(svec.begin(), mid);//用前一半的数据来初始化deque
deque<string> front(svec.begin(), mid);//用后一半的数据来初始化
char *words[] = { "state","pub"};//利用指针把数组里的一些数据取出来,初始化另外一种顺序容器
size_t words_size = sizeof(words) / sizeof(char *);//动态计算数组里有多少数据
list<string> words(words, words + words_size);//用数组的数据进行初始化
const list<int>::size_type list_size = 64;
list<string> slist2(list_size,"hello");//初始化了一个字符串链表,64个字符串,64 个字符串都是空的
list<int> ilist(list_size);
vector<Foo> a;//a是一个空的向量,a不会去调用Foo
vector<Foo> b(10,1);//b里边有10个对象,每一个对象都是Foo,使用Foo默认的构造函数进行初始化,如果没有构造函数
//如果没有构造函数就会出错,这么写会调用foo的构造函数,1是构造函数的参数
//容器里边还可以放容器
system("pause");
return 0;
}
顺序容器的定义
最新推荐文章于 2024-03-16 12:20:12 发布