您当前的位置: 首页 >  容器

txwtech

暂无认证

  • 6浏览

    0关注

    813博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

cb06a_c++_顺序容器的定义

txwtech 发布时间:2020-02-14 20:45:42 ,浏览量:6

cb06a_c++_顺序容器的定义 顺序容器: vector,数组,尾端操作数据,快速随机访问 list 链表,快速插入数据 deque数组,双端-首尾操作数据,方便两端的数据访问

顺序容器适配器: stack queue priority_queue   一种容器的数据初始化另一种类型容器  //用迭代器,vector容器初始化list.     list slist(svec.begin(),svec.end()); 关联容器:xxx

字符串数组: char str1[]="abc"; char str2[]="def"; char str3[]="ghi"; char str4[]="jkl"; char str5[]="xyz"; char *strArray[5]={str1,str2,str3,str4,str5}; 或者: const char  *words[] = { "stately","plump1","buck","mulligan" };//字符串数组 size_t words_size = sizeof(words) / sizeof(char *);//统计整体占多少字节,除以每个字符串占得字节数,得到有多少个字符串 error C2248: “Dog::Dog”: 无法访问 private 成员(在“Dog”类中声明),dog class没有写public,默认是private  

/*cb06a_c++_顺序容器的定义
顺序容器:
vector,数组,尾端操作数据,快速随机访问
list 链表,快速插入数据
deque数组,双端-首尾操作数据,方便两端的数据访问

顺序容器适配器:
stack
queue
priority_queue
  一种容器的数据初始化另一种类型容器
 //用迭代器,vector容器初始化list.
	list slist(svec.begin(),svec.end());
关联容器:xxx

字符串数组:
char str1[]="abc";
char str2[]="def";
char str3[]="ghi";
char str4[]="jkl";
char str5[]="xyz";
char *strArray[5]={str1,str2,str3,str4,str5};
或者:
const char  *words[] = { "stately","plump1","buck","mulligan" };//字符串数组
size_t words_size = sizeof(words) / sizeof(char *);//统计整体占多少字节,除以每个字符串占得字节数,得到有多少个字符串
error C2248: “Dog::Dog”: 无法访问 private 成员(在“Dog”类中声明),dog class没有写public,默认是private
*/
#include 
#include 
#include 
#include 
#include 
#include "Cat.h"
#include "Dog.h"

using namespace std;

int main()
{
	vector svec; //调用默认的构造函数创建的。
	svec.push_back("hello");
	svec.push_back("C++");
	svec.push_back("STL");
	list ilist;
	vector dogvec;//dogvec是空的向量。不会调用默认构造函数
	vector b(10);//b有10个对象,都是Dog的默认构造函数初始化
	vector b1(10,2);//调用dog 类中有参数的构造函数
	list catlist;
	//deque items;

	vector ivec;
	ivec.push_back(1);
	ivec.push_back(2);
	ivec.push_back(3);
	vector ivec2(ivec);//ivec2=ivec;

	//list ilist(ivec);//错误,vector与list类型不匹配
	 //用迭代器,vector容器初始化list.
	list slist(svec.begin(),svec.end());
	vector::iterator mid = svec.begin() + svec.size() / 2;//指向了数据元素的中间
	deque front(svec.begin(), mid);//svec前一半的数据初始化front;
	deque back(mid, svec.end());//用后一半的数据去初始化
	//char  *words = {"stately","plump1","buck","mulligan"};
	//error C2440: “初始化”: 无法从“initializer list”转换为“char *”
	//*words改为*words[];
	//error C2440 : “初始化”: 无法从“const char[8]”转换为“char *”,加上const就可以了
	 const char  *words[] = { "stately","plump1","buck","mulligan" };//字符串数组,数组指针
     size_t words_size = sizeof(words) / sizeof(char *);
	 

	 list words1(words, words + words_size);//char数据放入list.  //words1={"stately","plump1","buck","mulligan"};
	 
	 const list::size_type list_size = 64;
	 //list slist(64);//64个空串。
	 list slist1a(list_size,"hello");//64个hello.
	 list ilist2a(list_size, 8);//64个8;

	 //容器里面放容器
	 vector< vector >lines;//里面的vector记得空格隔开。
	 list< vector > slist22;

	 //梁平柚
	 //颂和时代城

	return 0;
}

 

关注
打赏
1665060526
查看更多评论
立即登录/注册

微信扫码登录

0.3275s