vector小结

一、vector的基本属性

   (1) vector是C++中的一个模板类,是我们常用到的一个容器,它的底层实现是C++的内置类型数组。标准库使用需要头文件#include<vector>,vector是一个类模板,vector<int>才是一种数据类型。它的存储空间与数组一样都是连续的。vector默认为空,在windows下的Visual studio系列工具里它的增长方式为0 -> 1  ->  2  ->  4 -> 8  ->  16   .......。

二、.vector的定义和初始化

	(1)vector<typename>  v1;v1此时容量为空,故v1[0 ]  = 0是错误的。
	(2)vector<typename>  v2(v1)或 v2 = v1或 vector<typename>  v2(v1.begin(),v1.end());   此时v2是v1的一个副本。
	(3)vector<typename> v3(n ,i) v 3  初始化为包含n个值为<typename>i的元素。
	(4)vector<typename> v4(n)  v4 初始化为含有n个值为<typename>NULL的元素。
	(5)int a[5]  = {0,1,2,3,4}; vector <int> v5(a,a+5);此时用数组a中的五个元素初始化V5;
	(6)vector<typename> v6(v5);此时V6是v5的拷贝。

三、值得初始化规则**:**

	(1)如果没有指定元素初始化,则标准库自行提供一个元素进行初始化。
	(2)如果容器中存放的是含有构造函数的类类型的元素,标准库使用该类类型的构造函数初始化。
	(3)如果存放的是不含有构造函数的类类型元素,则标准库提供一个带初始值的对象,使用这个对象进行值初始化。
	
**四、vector对象的几种易忽略的操作:**

	(1)v.resize(2*v.size(),0)将v的容量扩大二倍,并初始化为0;
	(2)v.insert(pointer ,number, content) 向pointer指定的位置插入number个content指定的值。
	(3)v.erase(pointer1,pointer2)删除p1到p2之间指定的元素,包括p1所指的元素。
	(4)对于const vector<typename>  只能用 vector <typename>:: const_iterator 类型的指针来访问。
	(5) p = v.end();p指向v的最后一个元素的下一个位置。
	(6)v.clear();删除v中的所有元素。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
引用:● QT工具(qt设计师,qt预言家,qt助手,qt例子); QT跨平台移植 [url=]Android[/url],[url=]IOS[/url],Windows,Linux, Mac 打包部署 移 ●页面基本控件 动 ●内容区域、列表与对话框应用 框 ●表单控件 架 ●主题定制 与 ●网格布局与页面创建、加载、跳转 设 ●动态内容整合 计 ●插件应用 模 ●设计模式与Boost ,ACE ,QT,cocos2dx详解 工厂模式,单例模式等等23种设计模式 式 ●设计模式与Boost ,ACE ,QT,cocos2dx详解 工厂模式,单例模式等等23种设计模式,UML实战 数 ●动态数组模板库 数组栈 数组队列库,字符串库 据 ●链表模板库,单链表,双链表,环链表 结 ●链式栈,链式队列 数组嵌套与链表嵌套 构 ●二叉树,线索二叉树模板库,优先队列库 部 ●哈弗曼树模板库 分 ●Tree B Tree 模板库 ●最大堆最小堆库 ●红黑树模板库 ●图模板库 ●排序模板库,数组排序,链表排序 ●贪心算法,背包算法,高级递归,动态规划 项 目 打飞机游戏 实 战 下载地址:关注wx公众号feixueteam。 C / C++ 语言中的 vector 是一个动态数组容器,它可以根据需要动态地增加或减少元素。通过使用 vector,你可以方便地处理变长数组,而无需手动处理内存分配和释放。在 C++ 中,vector 是标准模板库(STL)提供的容器之一,它提供了一系列的方法和操作符,使得对数组的操作更加方便和高效。你可以使用 vector 类型来声明一个变量,并通过调用其方法来添加、删除、访问和修改元素。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值