c++ vector如何使用 c++ vector方法攻略教程总结

下面是关于c++ vector的使用攻略总结:

c++ vector如何使用

什么是c++ vector

在c++中,vector是STL中提供的一种动态数组容器。vector可以在运行时自由增加或减少其元素数量,具有以下特点:

  • 支持随机访问

  • 内存位置连续

  • 支持快速插入和删除元素

  • 支持在尾部添加元素

vector的基本操作

声明和初始化

声明vector需要使用向量模板类,使用时需要包含头文件。以下是声明和初始化vector的常用方式:

#include <vector>
using namespace std;

vector<int> v;  //声明一个int类型的vector v
vector<int> v1(5); //声明一个初始大小为5的int类型的vector v1
vector<int> v2(5, 0); //声明一个初始大小为5且初始值均为0的int类型的vector v2
vector<int> v3{1, 2, 3, 4, 5}; //用初始列表初始化声明一个int类型的vector v3
vector<int> v4(v3); //声明一个和v3一样的int类型的vector v4

增加元素

使用push_back()函数可以在vector的尾部添加元素。以下是增加元素的示例:

vector<int> v;
v.push_back(1);
v.push_back(2);
v.push_back(3);

删除元素

使用erase()函数可以在vector中删除一个元素或者一段元素。以下是删除元素的示例:

vector<int> v{1, 2, 3, 4, 5};
v.erase(v.begin() + 2); //删除第3个元素,即3
v.erase(v.begin() + 1, v.end() - 1); //删除第2到第4个元素,即2、4

修改元素

vector支持随机访问,可以使用下标运算符或at()函数访问指定位置的元素。以下是修改元素的示例:

vector<int> v{1, 2, 3, 4, 5};
v[2] = 10; //将第3个元素修改为10
v.at(4) = 20; //将第5个元素修改为20

访问元素

vector支持随机访问,可以使用下标运算符或at()函数访问指定位置的元素。以下是访问元素的示例:

vector<int> v{1, 2, 3, 4, 5};
int a = v[2]; //访问第3个元素,即3
int b = v.at(4); //访问第5个元素,即5

vector的高级用法

迭代器

迭代器是STL中的一种通用访问方式,vector也可以使用迭代器访问其中的元素。以下是使用迭代器访问vector中元素的示例:

vector<int> v{1, 2, 3, 4, 5};
for (vector<int>::iterator it = v.begin(); it != v.end(); it++) {
    cout << *it << endl; //输出vector中的元素
}

操作符重载

尽管vector是一个模板类,但是它同样可以支持操作符重载。以下是实现vector加法操作的示例:

vector<int> operator +(const vector<int>& v1, const vector<int>& v2) {
    vector<int> res;
    int n = v1.size();
    for (int i = 0; i < n; i++) {
        res.push_back(v1[i] + v2[i]);
    }
    return res;
}

int main() {
    vector<int> v1{1, 2, 3};
    vector<int> v2{4, 5, 6};
    vector<int> v3 = v1 + v2;
    for (int i = 0; i < v3.size(); i++) {
        cout << v3[i] << " "; //输出7 9 11
    }
    return 0;
}

以上是关于c++ vector的使用攻略总结,希望对你有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:c++ vector如何使用 c++ vector方法攻略教程总结 - Python技术站

(0)
上一篇 2023年6月26日
下一篇 2023年6月26日

相关文章

  • 01python基础数据类型

    01python基础数据类型 Python是一门高级编程语言,提供了很多基础数据类型用于操作数据。在本篇文章中,我们将着重介绍Python的基础数据类型:数字、字符串、列表、元组、字典和集合。 数字 Python中有三种数字类型:整数、浮点数和复数。其中,整数即为常见的整数,浮点数则包括带有小数点的数字。 为了方便开发,Python支持多种数字进制表示方式。…

    其他 2023年3月29日
    00
  • C++模拟实现JDK中的ArrayList和LinkedList

    C++模拟实现JDK中的ArrayList和LinkedList 在C++中,可以使用STL中的vector和list来实现类似于JDK中的ArrayList和LinkedList的功能。下面是使用C++ STL实现ArrayList和LinkedList的示例。 ArrayList的实现 #include <iostream> #include…

    other 2023年5月5日
    00
  • vuejs使用递归组件实现树形目录的方法

    使用递归组件实现树形目录是Vue.js的一大特色,下面是一个完整的Vue.js递归组件实现树形目录的攻略: 前提条件 在开始讲解之前,确保你已经熟悉了以下知识: Vue.js基本使用 Vue.js组件及其使用方式 Vue.js动态组件及其使用方式 核心思路 Vue.js递归组件实现树形目录的核心思路如下: 使用组件嵌套来实现树形结构 递归自身组件来实现无限层…

    other 2023年6月27日
    00
  • ip地址掩码和位数对应关系由浅入深理解(192.168.0.0/24)

    IP地址掩码和位数对应关系的理解 IP地址掩码是用于划分网络和主机的一种技术。它通过将IP地址的一部分用于网络标识,另一部分用于主机标识,来确定一个IP地址所属的网络和主机。IP地址掩码通常用一个32位的二进制数表示,其中网络部分全为1,主机部分全为0。 例如,IP地址掩码为255.255.255.0,对应的二进制表示为11111111.11111111.1…

    other 2023年7月29日
    00
  • 如何telnetipv6

    如何使用Telnet连接IPv6地址 Telnet是一种用于远程登录到计算机的协议,它可以通过网络连接到远程计算机并执行命令。在IPv6网络中,您可以使用Telnet连接IPv6地址。以下是使用TelnetIPv6地址的步骤: 1. 确定目标IPv6地址 首先,您需要确定要连接的IPv6地址。您可以使用ping命令或其他网络工具来确定目标IPv6地址。 2.…

    other 2023年5月6日
    00
  • CSS实现横向粒子变动加载动画

    通过CSS实现横向粒子变动加载动画的具体攻略如下: 1. 准备阶段 首先,在HTML文件头部加入以下代码,引入动画所需要用到的CSS样式文件: <link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/riodw/css-particles-demo/css/rese…

    other 2023年6月25日
    00
  • WordPress中设置Post Type自定义文章类型的实例教程

    来一步一步详细讲解“WordPress中设置Post Type自定义文章类型的实例教程”的完整攻略。首先需要了解Post Type是WordPress中非常重要的一种功能,它可以帮助我们自定义文章类型,从而更好的管理网站内容。 第一步:使用代码创建自定义文章类型 首先,我们需要使用代码创建自定义文章类型。可以在主题的functions.php文件中添加以下代…

    other 2023年6月25日
    00
  • 思科CCNA认证学习笔记(五)IPV4地址、IP地址分类及特殊IP地址

    思科CCNA认证学习笔记(五)IPV4地址、IP地址分类及特殊IP地址 1. IPV4地址 IPV4地址是互联网协议版本4(Internet Protocol Version 4)使用的地址格式。它由32位二进制数表示,通常以点分十进制的形式呈现。IPV4地址的格式如下: XXX.XXX.XXX.XXX 其中,每个XXX代表一个8位二进制数,可以取值范围为0…

    other 2023年7月30日
    00
合作推广
合作推广
分享本页
返回顶部