| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> C++知识库 -> C++学习第七课--vector类型笔记 -> 正文阅读 |
|
[C++知识库]C++学习第七课--vector类型笔记 |
1、vector类型简介vector类型是一个标准库种的类型,代表一个容器,集合或者动态数组这样的一种概念。可以把若干个对象放到这个容器里面。 要想使用这种类型 需要在.cpp 源文件开头包含 vector 头文件: #include?<vector> 另外为了方便引用这种类型,也需要添加: using?namespace?std; 下面定义几种对象容器是可以的: (1)定义一个整型类型的容器对象。 vector <int> vIntData; 上面的代码定义了-个vector类型的对象,名字叫作vIntData,这个对象里而保存的就是 int 型数据。 (2)定义一个结构体类型的容器对象。 struct STUDENT { ??int num; }; vector <STUDENT> vStudent; (3)定义一个string类型的容器对象。 vector <string> vString; (4)定义一个int指针类型的容器对象。 vector <int *> vString; 2、定义和初始化vector对象(1)空vector。 定义如下: vector <string> mystr; ???//创建一个string类型的空vector对象(容器)。现在mystr里面不包含任何元素。 这样定义了一个空容器后,就可以往里面增加数据了。可以使用vector的成员函数push_back往容器末尾增加数据,看看一下例子:
?(2))vector 对象元素类型栩同的情况下,迸行vector 对象元素复制(新副本)。
?(3)在C++11中,还可以用初始化列表方法给初值,这个时候用”{ }”括起来。
(4)创建指定数量的元素。请注意,有元素数量概念的初始化,用的都是“( )”。
? ?如果不给元素初值,那么元素的初值要根据元素类型确定,例如元素类型为int,系统给的初值就是0,元素类型为string,系统给的初值是"",但是也存在有些类型,必须给初值,否则就会报错。
(5)多种初始化。“( )”一般表示对象中的元素数量这种概念,“{ }”一般表示元素的内容这种概念,但又不是绝对。 可以看一下下面的例子:
经过上面的初始化例子可以看到:想要正常通过”{ }”进行初始化,那么”{ }”里面的值类型得跟vector后面的”< >”里面的元素类型相同,否则“<>”里面提供的值就无法作为元素初始值,如mystr2、mystr3和myInt5。 3、vector对象上的操作(1)判断是否为空empty(),返回布尔值。
(2)push_back:一个非常常用的方法,用于向vector末尾增加一个元素。
(3)size:返回元素个数。 cout << myInt1.size() << endl; ?//10 (4)clear:移除所有元素,将容器清空。 myInt1.clear(); cout << myInt1.size() << endl; ?//0 (5)myInt1[n]:返回myInt1中的第n个元素,n下标从0开始。位置值n也必须小于.size(),如果下标引用超过这个范围,或许用下标访问一个空的vector,都会产生不可预测的结果。
? (6)赋值运算符(=)。
(7)相等和不等(== 和!=)。
(8)范围for的应用:和讲解string时对范围for的应用相似。
到此,vector类型的简介和操作说明已完成。 2022.06.26结。 |
|
C++知识库 最新文章 |
【C++】友元、嵌套类、异常、RTTI、类型转换 |
通讯录的思路与实现(C语言) |
C++PrimerPlus 第七章 函数-C++的编程模块( |
Problem C: 算法9-9~9-12:平衡二叉树的基本 |
MSVC C++ UTF-8编程 |
C++进阶 多态原理 |
简单string类c++实现 |
我的年度总结 |
【C语言】以深厚地基筑伟岸高楼-基础篇(六 |
c语言常见错误合集 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/23 16:58:48- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |