1.vector介绍:
vector是C++标准模板库中的部分内容,它是一个多功能的,能够操作多种数据结构和算法的模板类和函数库。vector之所以被认为是一个容器,是因为它能够像容器一样存放各种类型的对象,简单地说,vector是一个能够存放任意类型的动态数组,能够增加和压缩数据。
2.vector函数:
c.assign(beg,end)
将[beg; end)区间中的数据赋值给c。
c.assign(n,elem)
将n个elem的拷贝赋值给c。
c.at(idx)
传回索引idx所指的数据,如果idx越界,抛出out_of_range。
c.back()
传回最后一个数据,不检查这个数据是否存在。
c.begin()
传回迭代器中的一个数据。
c.capacity()
返回容器中数据个数。
c.clear()
移除容器中所有数据。
c.empty()
判断容器是否为空。
c.end()
指向迭代器中的最后一个数据地址。
c.erase(pos)
删除pos位置的数据,传回下一个数据的位置。
c.erase(beg,end)
删除[beg,end)区间的数据,传回下一个数据的位置。
c.front()
传回地一个数据。
get_allocator
使用构造函数返回一个拷贝。
c.insert(pos,elem)
在pos位置插入一个elem拷贝,传回新数据位置。
c.insert(pos,n,elem)
在pos位置插入n个elem数据。无返回值。
c.insert(pos,beg,end)
在pos位置插入在[beg,end)区间的数据。无返回值。
c.max_size()
返回容器中最大数据的数量。
c.pop_back()
删除最后一个数据。
c.push_back(elem)
在尾部加入一个数据。
c.rbegin()
传回一个逆向队列的第一个数据。
c.rend()
传回一个逆向队列的最后一个数据的下一个位置。
c.resize(num)
重新指定队列的长度。
c.reserve()
保留适当的容量。
c.size()
返回容器中实际数据的个数。
c1.swap(c2) swap(c1,c2)
将c1和c2元素互换。
3.vector简单应用
vector 的数据的存入和输出:
#include<stdio.h>
#include<vector>
#include <iostream>
using namespace std;
void main()
{
int i = 0;
vector<int> v;
for( i = 0; i < 10; i++ )
{
v.push_back( i );//把元素一个一个存入到vector中
}
for( i = 0; i < v.size(); i++ )//v.size() 表示vector存入元素的个数
{
cout << v[ i ] << " "; //把每个元素显示出来
}
cont << endl;
}
注:你也可以用v.begin()和v.end() 来得到vector开始的和结束的元素地址的指针位置。你也可以这样做:
vector<int>::iterator iter;
for( iter = v.begin(); iter != v.end(); iter++ )
{
cout << *iter << endl;
}
2. 对于二维vector的定义。
1)定义一个10个vector元素,并对每个vector符值1-10。
#include<stdio.h>
#include<vector>
#include <iostream>
using namespace std;
void main()
{
int i = 0, j = 0;
//定义一个二维的动态数组,有10行,每一行是一个用一个vector存储这一行的数据。
所以每一行的长度是可以变化的。之所以用到vector<int>(0)是对vector初始化,否则不能对vector存入元素。
vector< vector<int> > Array( 10, vector<int>(0) );
for( j = 0; j < 10; j++ )
{
for ( i = 0; i < 9; i++ )
{
Array[ j ].push_back( i );
}
}
for( j = 0; j < 10; j++ )
{
for( i = 0; i < Array[ j ].size(); i++ )
{
cout << Array[ j ][ i ] << " ";
}
cout<< endl;
}
}
2)定义一个行列都是变化的数组。
#include<stdio.h>
#include<vector>
#include <iostream>
using namespace std;
void main()
{
int i = 0, j = 0;
vector< vector<int> > Array;
vector< int > line;
for( j = 0; j < 10; j++ )
{
Array.push_back( line );//要对每一个vector初始化,否则不能存入元素。
for ( i = 0; i < 9; i++ )
{
Array[ j ].push_back( i );
}
}
for( j = 0; j < 10; j++ )
{
for( i = 0; i < Array[ j ].size(); i++ )
{
cout << Array[ j ][ i ] << " ";
}
cout<< endl;
}
}
相关推荐
下面我们将详细探讨`vector`的使用方法和相关知识点。 首先,引入`vector`所需的头文件是`#include <vector>`。`vector`是一个模板类,可以用来存储不同类型的数据,例如整数、浮点数或者自定义对象。例如,`vector...
在本文中,我们将深入探讨`std::vector`的用法,包括其定义、初始化、值初始化以及各种操作。 首先,`std::vector`是一个模板类,它的实例可以存储任意类型的元素。例如,`vector<int>`表示一个存储整数的`std::...
### C++ Vector 用法详解 #### 一、Vector 概述 `vector` 是 C++ 标准模板库(STL, Standard Template Library)中的一种动态数组容器,它可以自动管理内存并根据需要调整大小。作为一种高效且灵活的数据结构,`...
### C++ Vector 用法深入剖析 #### 一、Vector 的基本概念与使用场景 Vector 是 C++ 标准模板库 (STL) 中的一种容器,它可以被理解为一种能够自动管理内存的动态数组。Vector 支持随机访问,并且在内部通过一个...
c++ vector用法 C++内置的数组支持容器的机制,但是它不支持容器抽象的语义。要解决此问题我们自己实现这样的类。在标准C++中,用容器向量(vector)实现。容器向量也是一个类模板。 标准库vector类型使用需要的...
C++中的Vector是一种非常常用的动态数组,它是C++标准模板库(STL)的一部分。STL提供了许多高效且灵活的容器,而Vector就是其中最基础也是最常用的一种。它允许程序员像操作普通数组那样进行动态存储和管理元素,同时...
下面我们将深入探讨`vector`的使用方法。 1. **创建和初始化**: - `vector`的创建可以使用默认构造函数,也可以指定初始容量或提供一个初始元素序列。 - 使用`push_back()`方法添加元素到`vector`末尾。 - 初始...
清华大学C++课件中vector用法实例 本文将详细介绍清华大学C++课件中vector用法实例,涵盖了vector的基本操作、算法和函数对象的使用。...通过本文,读者可以更好地理解C++ STL中的vector容器,并掌握它的使用方法。
C++数组vector用法.pdf C++ 标准库中的容器类 vector 是一种非常重要的数据结构,用于管理动态数组。下面我们将详细介绍 vector 的优点和使用注意事项。 为什么选择 vector? 在一些使用 MFC 的程序中,经常看到...
rank_ecpm_v1~rank_v31_ecpm-3-82255984.142^v9^pc_search_result_cache,157^v4^control&utm_term=vector&spm=1018.2226.3001.4187的相关代码
C++ vector 基础知识点总结 vector 是 C++ 标准模板库中的一个多功能的模板类和函数库,能够操作多种数据结构和算法。它是一个容器,能够存放各种类型的对象...了解 vector 的使用可以帮助开发者更好地编写 C++ 程序。
Vector容器的使用方法有两种,一种是数组习惯用法,另一种是STL习惯用法。 数组习惯用法中,我们可以定义一个已知长度的Vector,例如:`vector<int> ivec(10);`这样定义了一个包含10个整数元素的Vector。我们可以...
### C++中的Vector使用方法详解 #### 一、Vector简介 在C++中,`vector`是标准模板库(STL)中的一个重要组成部分,它提供了一种动态数组的功能,能够自动管理内存并支持随机访问。相比于传统的C风格数组,`vector`...
这个实验作业不仅锻炼了学生对`std::vector`的使用,还让他们实践了C++的继承和多态特性,这些都是在实际开发中不可或缺的技能。同时,通过使用西南科技大学的课程,学生还能获得严谨的编程思维和良好的编程习惯,为...
6. **其他方法**:`empty()`检查`vector`是否为空,`clear()`清空`vector`的所有元素,`swap(vector<T>& other)`交换两个`vector`的内容。 ### 效率考虑 虽然`vector`提供了许多便利,但在特定操作下,如在中间...
下面是 C++ 中 Vector 的使用方法: 头文件和命名空间 使用 Vector 需要包含头文件 `<vector>`,并使用 `std` 命名空间,使用 `using namespace std;` 声明。 定义和初始化 定义 Vector 可以使用以下方式: * `...
vector 是 C++ 标准库中的一个类模板,它提供了一个动态数组的机制,能够自动扩展和收缩以适应不同的数据量。下面将深入解析 vector 的用法和特性。 一、 vector 的定义和初始化 vector 是一个类模板,需要使用尖...
在C++编程中,`std::vector`是一个常用的容器,用于存储同类型的元素序列。然而,在处理数据时,我们有时需要去除其中的重复项。这篇博客文章“实现从vector中过滤重复的数据”提供了几种方法来解决这个问题。我们将...
本文将详细介绍 `vector` 在 C++ 中的使用方法及其一些关键特性,包括元素访问方式的选择、调整容器大小的方法等。 #### 二、元素访问方式 ##### 1. `[]` 操作符与 `.at()` 方法的区别 在 C++ 中,`std::vector` ...