vector的几种初始化及赋值方式

Vector的几种初始化及赋值方式

在C++中,vector是一个非常常用的容器,它可以动态地增加和减少元素,类似于数组,但是不需要提前预留空间,更加灵活方便。本文将介绍vector的几种初始化及赋值方法。

声明并初始化

当我们声明一个vector变量时,需要指定元素的数据类型,如:

vector<int> vec;

此时vec是一个空的vector,如果需要对其进行初始化,可以通过以下方式:

指定大小并赋初值

可以使用vector<int> vec(n, value)语句创建一个大小为n的vector,其中所有元素都被初始化为value。

vector<int> vec(5, 2); // vec=[2,2,2,2,2]

直接赋值初始化

使用大括号可以直接赋予一组初值:

vector<int> vec = {1, 2, 3, 4};

或者:

vector<int> vec{1, 2, 3, 4};

使用其他vector来初始化

可以将一个vector复制到另一个vector中:

vector<int> vec1 = {4, 6, 8, 10};
vector<int> vec2 = vec1; // vec2=[4,6,8,10]

赋值操作

使用等号赋值

使用等号可以将一个vector赋值给另一个vector:

vector<int> vec1 = {1, 2, 3};
vector<int> vec2 = {4, 5, 6}; 
vec1 = vec2; // vec1=[4,5,6], vec2=[4,5,6]

使用assign()函数赋值

使用assign()函数可以将一个vector的元素赋值给另一个vector:

vector<int> vec1 = {1,2,3};
vector<int> vec2 = {4,5,6};
vec1.assign(vec2.begin(), vec2.end()); //vec1=[4,5,6]

总结

vector是一个十分便利的容器,使用它可以轻松地进行可变长数组的操作,使用其中的几种初始化及赋值方法能够进一步提高程序的效率,增强程序的可维护性。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:vector的几种初始化及赋值方式 - Python技术站

(0)
上一篇 2023年3月28日
下一篇 2023年3月28日

相关文章

  • win7系统中最快速的安装字体的两种方法

    Win7系统中最快速的安装字体的两种方法攻略 在Win7系统中,安装字体可以通过以下两种方法来实现,这两种方法都非常快速和方便。 方法一:使用字体预览功能安装字体 首先,将字体文件(通常是以.ttf、.otf或者其他字体文件格式结尾)复制到计算机上的任意位置,例如桌面或者一个特定的文件夹。 双击打开字体文件,系统会自动打开字体预览窗口,你可以在这个窗口中查看…

    other 2023年8月5日
    00
  • html5的localstorage详解

    HTML5的LocalStorage详解 LocalStorage是HTML5提供的一种在浏览器端存储数据的机制。它可以在浏览器关闭后仍然保留数据,并且可以在同一域名下的不同页面之间共享数据。在本攻略中,我们将详细介绍LocalStorage的使用方法和示例。 使用LocalStorage存储数据 LocalStorage使用键值对的方式存储数据。可以使用J…

    other 2023年10月17日
    00
  • httpwatch工具简介及使用技巧(转)

    HTTPWatch工具简介及使用技巧(转) 什么是HTTPWatch? HTTPWatch是一种用于浏览器HTTP(S)请求和响应的网络分析工具,可捕获HTTP请求和响应,帮助用户分析网络性能和速度,从而优化网页性能和用户体验。 HTTPWatch有两个版本:免费版和专业版。免费版可以捕获和分析基本的HTTP请求和响应信息,而专业版则具有更多的功能,例如定时…

    其他 2023年3月29日
    00
  • Linux shell利用sed如何批量更改文件名详解

    下面是“Linux shell利用sed如何批量更改文件名详解”的完整攻略: 1. sed命令简介 sed是一种文本处理工具,主要用于文本替换、删除、查询、添加等操作。sed具有不修改原文件的特点,可以直接读取文件内容,按照指定的规则进行操作,将结果输出到标准输出或者保存到一个新文件中。sed主要使用正则表达式进行匹配和替换。 2. 使用sed批量更改文件名…

    other 2023年6月26日
    00
  • 微信为什么占好几个G的内存?清理微信占用内存的方法

    微信为什么占好几个G的内存? 微信占用大量内存的原因主要有以下几点: 聊天记录和媒体文件:微信保存了用户的聊天记录和接收的媒体文件,包括图片、视频、语音等。这些文件会占用大量的存储空间,尤其是当用户有大量聊天记录或频繁接收媒体文件时。 缓存数据:微信为了提高用户体验,会缓存一些数据,例如好友列表、公众号文章等。这些缓存数据也会占用一定的内存空间。 小程序和插…

    other 2023年8月2日
    00
  • JavaScript进阶(一)变量声明提升实例分析

    JavaScript进阶(一)变量声明提升实例分析 在JavaScript中,变量声明提升是一种特性,它允许在变量声明之前就可以使用这些变量。这意味着,无论变量声明在代码的哪个位置,它们都会被提升到作用域的顶部。 1. 变量声明提升的基本概念 变量声明提升是JavaScript引擎在代码执行之前将变量声明移动到作用域顶部的过程。这意味着,无论变量声明在代码的…

    other 2023年8月8日
    00
  • Windows8系统Metro(Modern UI)界面应用程序安装失败的解决方法

    针对“Windows8系统Metro(Modern UI)界面应用程序安装失败”的解决方法,下面提供完整攻略,包括以下步骤: 1. 确认系统环境与要求 在安装前,需要确认系统的环境是否符合要求。要求如下: 操作系统至少是 Windows 8 或更新的版本 设备应该使用有线或无线网络连接 用户应该具有管理员权限 如果系统环境满足要求,并仍然无法安装应用程序,则…

    other 2023年6月25日
    00
  • 苹果iOS10.3.3正式版固件更新发布 iOS10.3.3正式版固件下载地址大全

    苹果iOS10.3.3正式版固件更新发布攻略 1. 简介 苹果公司发布了iOS10.3.3正式版固件更新,该更新修复了一些安全漏洞和稳定性问题。本攻略将详细介绍如何更新iOS10.3.3固件,并提供下载地址。 2. 更新步骤 请按照以下步骤更新您的设备到iOS10.3.3正式版固件: 备份数据:在进行任何系统更新之前,建议您先备份设备中的重要数据。您可以使用…

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