C++学习基础十四——基础类型vector
一、vector的使用
1. #include <vector>
2. 初始化的四种方法
vector<T> v1;
vector<T> v2(v1);
vector<T> v3(n, i);//长度为n,元素值均是i
vector<T> v4(n);//长度为0,元素均为0
3. 常用方法
(1)v.size():返回值为size_type类型
* 使用size_type类型时,必须指出该类型在哪里定义的,例如vector<int>::size_type。
(2)push_back(t):向v的尾部添加一个元素t。
(3)下标法访问vector元素
vector可以使用下标操作访问其元素,即下标只能用于获取已经存在的元素,而不能通过下标向vector中添加元素。当添加元素时只能通过push_back方法实现。(当试图获取不存在的元素时必然会产生运行时错误)
(4)迭代器访问vector元素(每种容器类型都定义了自己的迭代器类型,因此迭代器对所有的容器都适用,现在C++更倾向于使用迭代器而不是下标访问容器元素)
(5)v.erase(it):删除指定元素
二、vector与数组的区别
1. 数组的长度是固定的,而vector的长度不是固定的,vector可通过push_back在尾部添加元素。
2. 数组间不允许直接复制和赋值。例如:
int a[] = {,};
int b[](a);//error
int c[] = a;//error
int d[];
d = a;//error
3. 数组没有获取其长度的方法,遍历数组时必须提前记录数组的长度。
C++学习基础十四——基础类型vector的更多相关文章
- Bootstrap<基础十四> 按钮下拉菜单
使用 Bootstrap class 向按钮添加下拉菜单.如需向按钮添加下拉菜单,只需要简单地在在一个 .btn-group 中放置按钮和下拉菜单即可.也可以使用 <span class=&qu ...
- python3.4学习笔记(十四) 网络爬虫实例代码,抓取新浪爱彩双色球开奖数据实例
python3.4学习笔记(十四) 网络爬虫实例代码,抓取新浪爱彩双色球开奖数据实例 新浪爱彩双色球开奖数据URL:http://zst.aicai.com/ssq/openInfo/ 最终输出结果格 ...
- Linux学习之十四、管线命令
Linux学习之十四.管线命令 地址:http://vbird.dic.ksu.edu.tw/linux_basic/0320bash_6.php
- 风炫安全WEB安全学习第二十四节课 利用XSS钓鱼攻击
风炫安全WEB安全学习第二十四节课 利用XSS钓鱼攻击 XSS钓鱼攻击 HTTP Basic Authentication认证 大家在登录网站的时候,大部分时候是通过一个表单提交登录信息. 但是有时候 ...
- Python 1基础语法四(数字类型、输入输出汇总和命令行参数)
一.数字(Number)类型 python中数字有四种类型:整数.布尔型.浮点数和复数. int (整数), 如 1, 只有一种整数类型 int,表示为长整型,没有 python2 中的 Long. ...
- (C/C++学习笔记) 十四. 动态分配
十四. 动态分配 ● C语言实现动态数组 C语言实现动态数组,克服静态数组大小固定的缺陷 C语言中,数组长度必须在创建数组时指定,并且只能是一个常数,不能是变量.一旦定义了一个数组,系统将为它分配一个 ...
- java编程思想第四版第十四章 类型信息习题
fda dfa 第三题u package net.mindview.typeinfo.test4; import java.util.ArrayList; import java.util.Array ...
- Java基础学习笔记十四 常用API之基本类型包装类
基本类型包装类 Java中有8种基本的数据类型,可是这些数据是基本数据,想对其进行复杂操作,变的很难.怎么办呢?在实际程序使用中,程序界面上用户输入的数据都是以字符串类型进行存储的.而程序开发中,我们 ...
- javascript基础学习(十四)
javascript之表单对象 学习要点: 表单对象 文本框 按钮 单选框和复选框 一.表单对象 在HTML文档中可能会出现多个表单,也就是说,一个HTML文档中可能出现多个<form>标 ...
随机推荐
- C# winForm中调用javascript文件中的方法
目前有很多的SNS社区或类SNS的网站,例如开心.51.校内等,但是发现大多数社区在邀请好友的时候都没有提供对QQ邮箱或者QQ空间好友列表获取的功能,不过似乎海内支持,但是网上相关QQ的文章还不是很多 ...
- 【git】之push异常
Push rejected: Push to origin/master was rejected 打开git shell面板 $ git pull origin master --allow-unr ...
- STL基础--String
String 构造 string s1("Hello"); string s2("Hello", 3); //s2: Hel string s3(s1, 2); ...
- Solr4.2 新特性 DocValues [转]
原文地址http://wiki.apache.org/solr/DocValues DocValues从Lucene4.2和Solr4.2开始加入,通过建立字段的正排索引,提升sorting, fac ...
- pyqt信号和槽传递额外参数
转载:fengyu09 环境:python2.7.8 —— pyqt 4.11.1 使用Pyqt编程过程中,经常会遇到给槽函数传递额外参数的情况.但是信号-槽机制只是指定信号如何连接到槽,信号定义的参 ...
- Qt error: stray '\241' in program
转载:iGoforward 报错的意思是c++中的产生了编译错误. 该错误是指源程序中有非法字符,需要将非法字符去掉.一般是由于编程者(不用程序员这个名词是因为这种错误太低级)使用中文输入法 或者从别 ...
- bzoj4398: 福慧双修
正边权无向图,一条边两个方向权值不一定相同,求经过点1的最小简单环 简单环包含了点1的一条出边和一条入边,且这两条边不同,因此可以枚举这两条边的编号的二进制表示中哪一位不同,用最短路求此时的最优解,时 ...
- hasClass() removeClass() addClass()
//检查第元素是否包含 "intro" 类 $("button").click(function(){ alert($("p:first") ...
- 理解 neutron(15):Neutron Linux Bridge + VLAN/VXLAN 虚拟网络
学习 Neutron 系列文章: (1)Neutron 所实现的虚拟化网络 (2)Neutron OpenvSwitch + VLAN 虚拟网络 (3)Neutron OpenvSwitch + GR ...
- opengl 结果白屏解决方法
最近图形学在做上机实验,需要使用到opengl实验操作,可是我的电脑不给力, 不能显示正确结果,每次都是白屏,无法显示应有的结果. 1.问题:opengl 白屏 2.环境:win7系统,64位.机型是 ...