STL之vector(向量)
C++编程语言中有一种叫做Vector的应用方法,它的作用在实际编程中是非常重要的,这里详细介绍一下C++ Vector的相关应用技巧及基本内容:
Construct vector
#include
#include
using namespace std ;
int main() {
vector first ; //定义一个对象
vector second(4,100) ; //定义一个对象,并为该对象赋初始值
vector third(second.begin(),second.end()) ; // 将对象second中的值赋给hird
vector fourth(third) ; //将对象third中的值赋给ourth
int a[] = {1,2,3,4,5,6,7,8} ;
vector fifth(a,a+6) ; //将数组a中的前6个值赋给对象ifthvector::iterator iter2 = second.begin() ;
for(; iter2 != second.end() ; iter2++)
cout ::iterator iter3 = third.begin() ;
for(; iter3 != third.end() ; iter3++)
cout ::iterator iter4 = fourth.begin() ;
for(; iter4 != fourth.end() ; iter4++)
cout ::iterator iter5 = fifth.begin() ;
for(; iter5 != fifth.end() ; iter5++)
cout
对象的复制#include
#include
#include
using namespace std ;
typedef vector ve ;
int main() { //对象的复制
ve foo(3,0) ;
ve bar(5,0) ;
bar = foo ;
foo = ve() ;
cout
逆序输出:#include
#include
#include
using namespace std ;
typedef vector ve ;
int main() { //逆序输出
int a[] = {1,2,3,4,5,6,7,8} ;
ve v(a,a+sizeof(a)/sizeof(int)) ;
ve::reverse_iterator iter = v.rbegin() ;
for( ; iter != v.rend() ; iter++)
cout
重定义对象的大小:#include
#include
#include
using namespace std ;
typedef vector ve ;
int main() {
int a[] = {1,2,3,4,5,6,7,8} ;
ve v(a,a+sizeof(a)/sizeof(int)) ;
v.resize(10) ;
for(int i = 0 ; i
判断对象是否为空:#include
#include
#include
using namespace std ;
typedef vector ve ;
int main() {
int a[] = {1,2,3,4,5,6,7,8} ;
ve v(a,a+sizeof(a)/sizeof(int)) ;
while(!v.empty()) {
cout
对象中第一个元素和最后一个元素:#include
#include
#include
using namespace std ;
typedef vector ve ;
int main() {
int a[] = {1,2,3,4,5,6,7,8} ;
ve v(a,a+sizeof(a)/sizeof(int)) ;
cout
在对象中插入一个元素:#include
#include
#include
using namespace std ;
typedef vector ve ;
int main() {
int a[] = {1,2,3,4,5,6,7,8} ;
ve v(a,a+sizeof(a)/sizeof(int)) ;
ve::iterator iter = v.begin() ;
iter = v.insert(iter+2,200) ; // 在第二个元素之后插入一个元素200
for(int i = 0 ; i
或者这样实现插入:#include
#include
#include
using namespace std ;
typedef vector ve ;
int main() {
int a[] = {1,2,3,4,5,6,7,8} ;
ve v(a,a+sizeof(a)/sizeof(int)) ;
v.insert(v.begin(),2,200) ; // 在第一个元素之前插入两个元素200
for(int i = 0 ; i
对象中元素的删除:#include
#include
#include
using namespace std ;
typedef vector ve ;
int main() {
int a[] = {1,2,3,4,5,6,7,8} ;
ve v(a,a+sizeof(a)/sizeof(int)) ;
v.erase(v.begin(),v.begin()+2) ; // 删除前两个元素
for(int i = 0 ; i
清空对象中的所有元素:#include
#include
#include
using namespace std ;
typedef vector ve ;
int main() {
int a[] = {1,2,3,4,5,6,7,8} ;
ve v(a,a+sizeof(a)/sizeof(int)) ;
v.clear() ;
for(int i = 0 ; iSTL之vector(向量)的更多相关文章
- C++STL之Vector向量详解,用法和例子 一起学习 一起加油
C++ STL之vector用法总结 1 ...
- C++STL之vector向量容器
vector向量容器 vector向量容器不但能向数组一样对元素进行随机访问, 还能在尾部插入元素 vector具有内存自动管理的功能, 对于元素的插入和删除, 可动态调整所占的内存空间 vect ...
- STL --> vector向量
vector向量 vector是一种对象实体,能够容纳许多其他类型相同的元素,因为又被称为容器. 头文件 在使用它时,需要包含头文件 <vector>. #include <vect ...
- 跟我一起学STL(2)——vector容器详解
一.引言 在上一个专题中,我们介绍了STL中的六大组件,其中容器组件是大多数人经常使用的,因为STL容器是把运用最广的数据结构实现出来,所以我们写应用程序时运用的比较多.然而容器又可以序列式容器和关联 ...
- STL 统计vector容器中指定对象元素出现的次数:count()与count_if()算法
1 统计vector向量中指定元素出现的次数:count()算法 利用STL通用算法统计vector向量中某个元素出现的次数:count()算法统计等于某个值的对象的个数. #include &quo ...
- vector 向量容器用法祥解
vector(向量): C++中的一种数据结构,确切的说是一个类.它相当于一个动态的数组,当程序员无法知道自己需要的数组的规模多大时,用其来解决问题可以达到最大节约空间的目的. 用法: ...
- STL中vector、list、deque和map的区别
1 vector 向量 相当于一个数组 在内存中分配一块连续的内存空间进行存储.支持不指定vector大小的存储.STL内部实现时,首先分配一个非常大的内存空间预备进行存储,即capac ...
- 【转】STL中vector、list、deque和map的区别
1.vector 向量 相当于一个数组 在内存中分配一块连续的内容空间进行存储.支持不指定vector大小的存储.STL内部实现时,首先分配一个非常大的内存空间预备进行存储,即capacity()函数 ...
- vector向量容器(常用的使用方法总结)
关于STL中vector容器的学习,编译运行后边看代码,边看执行结果效果更佳,还是想说看别人的代码一百遍,不如自己动手写一遍. vector向量容器不但能像数组一样对元素进行随机访问,还能随时在尾部插 ...
- [STL][C++]VECTOR
参考:http://blog.csdn.net/hancunai0017/article/details/7032383 vector(向量): C++中的一种数据结构,确切的说是一个类.它相当于一个 ...
随机推荐
- python基础学习笔记4--抽象
抽象 1.函数: 1) 函数是可以调用,它执行某种行为并且返回一个值.可以通过callable函数来判断函数是否可调用. eg:>>> def hello(name): ...
- MYSQL group_concat() 函数
看来看一下表中的数据 select * from t; 下一步来看一下group_concat函数的用法 select ID,group_concat(Name) from t group by ID ...
- Android Material Design 之 Toolbar的使用
Material Design是谷歌提出来的最新ui设计规范,我想actionbar大家也许并不陌生,toolbar简单而言可以看做为actionbar的升级版,相比较actionbar而言,tool ...
- java对象的比较分析
关于对象的比较我们可以通过以下三种手段来实现 一.利用"=="比较引用 Java中,当比较简单类型变量时用"==",只要两个简单类型值相等即返回ture,否则返 ...
- python import 自己的包
在写python时,有时候写的一个python文件可能需要被其他python文件所用,那么可以用导入包 import 的 方式: 1.自己写的包放到哪里? >>> import sy ...
- MyMVC框架的使用
1)在web.config 中system.web 节点下加入例如以下代码 <pages controlRenderingCompatibilityVersion="4.0" ...
- cc2540 cc2541 低功耗实測和总结-与注意事项 - 低功耗小于10uA
CC2541 CC2540 实现超低功耗是很重要的: 我们来总结一下实现方法: 1,有定时器在跑时会一直跑在 PM2 电流在 300uA左右. 没有定时器跑后会到 PM3 , 电流会少于1 ...
- HTTP请求和数据安全
/*------------------------------------- 01 HTTP请求 ---------------------------------------*/ 重点:1.超文本 ...
- Java学习之对象实例化
一个对象实例化过程:Person p = new Person();1,JVM会读取指定的路径下的Person.class文件,并加载进内存,并会先加载Person的父类(如果有直接的父类的情况下). ...
- django1.4.5无法安装MySQLdb1.2.3
解决办法是: yum install python-devel mysql-devel zlib-devel openssl-devel 然后再build.install