vector深拷贝与浅拷贝使用总结

(1)、拷贝构造/赋值函数   --- 深拷贝

    int w= 100;int h = 20;vector<int> dataA(w*h ,0Xff);vector<int> dataB = dataA; // copy 构造int * ptr0 = &dataA[0];int * ptr1 = &dataB[0];printf("%u\n", ptr0);printf("%u\n", ptr1);

结果:

两者的地址是不一样的,可以说明是深拷贝

(2)、swap()和 assign()函数 --- 深拷贝

这两个就不用了说了,swap()是从堆上删除vector中的元素

assign()是重新分配一块内存,给内存赋值

(3)、clone()只是浅拷贝

clone()是浅拷贝,看源码只是指针的移动,并没内存的分配与释放。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/463188.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JavaScript 对象和包装类

对象的创建方法 {}var obj {} 系统自带的构造函数var obj new Object()//Array()//Number() 自定义的构造函数function Person(){} var person1 new Person() 注&#xff1a;构造函数&#xff1a;大驼峰命名规则 TheFirstName 普通函数&#xff1a;小驼峰命名规则 the…

dll动态链接库

Visual C#生成DLL文件——预备知识 DLL&#xff08;Dynamic Link Library&#xff09;文件即动态链接库文件&#xff0c;是一种可执行文件&#xff0c;允许程序共享执行特殊任务所必需的代码和其他资源。多数情况下带有dll扩展名&#xff08;也可以 是.ocx文件&#xff1a;Acti…

C# OLE DB 的连接方式下 对 sql 参数的操作 需要改成 ? 号

C# OLE DB 的连接方式下 对 sql 参数的操作 需要改成 ? 号

ELF文件格式

ELF文件格式 ELF文件&#xff08;Executable Linkable Format&#xff09;是一种文件存储格式。Linux下的目标文件和可执行文件都按照该格式进行存储&#xff0c;有必要做个总结。 概要 本文主要记录总结32位的Intel x86平台下的ELF文件结构。ELF文件以Section的形式进行存储…

TCP协议的三次握手与四次挥手

tcp协议的三次握手和四次挥手 三次握手&#xff1a; 第一次握手&#xff1a; 客户端发起一个链接&#xff08;SYN&#xff09; 第二次握手&#xff1a; 服务端就会返回一条&#xff08;ACK&#xff09;确认信息&#xff0c;同时服务端也会向客户端发起一个链接请求&#xff08;…

晚上美容护肤10要诀 - 健康程序员,至尚生活!

夜晚美容护肤十要诀  如何护肤&#xff0c;我想谁也知道晚上是给予皮肤滋养的最佳时期&#xff0c;别以为早晚搽日霜、晚霜就能够令你的皮肤变得白雪雪、滑嘟嘟&#xff0c;其实这只是表面的滋润。要彻底护理&#xff0c;就要依赖你睡前的准备功夫&#xff0c;才能使肌肤得到…

明白了为什么java方法上面为什么要加个@符号

原来是java的特性“注解&#xff08;Annotation&#xff09;” 注解&#xff08;Annotation&#xff09; 为我们在代码中天界信息提供了一种形式化的方法&#xff0c;是我们可以在稍后某个时刻方便地使用这些数据&#xff08;通过 解析注解 来使用这些数据&#xff09; 注解的语…

PG内核分析 QA

今天查找postgreSQL相关的资料时&#xff0c;查找到该文章&#xff0c;觉得写得比较好 https://www.cnblogs.com/liuhaifeng/p/12184902.html

STM32的PA15、PB3、 PB4管脚作普通管脚的解决办法

最近做了一个板子&#xff0c;使用的是SWD方式进行下载程序&#xff0c;仅仅使用到SWDIO&#xff08;PA13&#xff09; 和SWCLK&#xff08;PA14&#xff09;两个管脚。我将PA15&#xff08;JTDI&#xff09;和PB3&#xff08;JTDO&#xff09;管脚用于他用&#xff08;用于点L…

Google不要走

这两天Google离开中国的新闻不断&#xff0c;如果他真的要离开&#xff0c;我会觉得非常遗憾。我想他已经是大部分程序员的精神领袖&#xff0c;技术牛人的代表&#xff0c;现在居然会被逼走&#xff1f;&#xff1f; 与百度的搜索相比&#xff0c;Google也有广告&#xff0c;但…

AIX errdemon 命令

errdemon 进程持续检查 /dev/error 文件,收集error信息。 命令格式&#xff1a; Usage: errdemon -i filename -s value -B value [ -d | -D -m maxdups -t time ] | -l -i filename Uses the error log file specified by the filename parameter. If this f…

C#集合。

集合命名空间&#xff1a; using system.collections. 非泛型集合 using system.collections.Generic. 泛型集合 为什么要用集合&#xff1a; 1、数组一旦声明长度就固定了。 2、集合有很多方法可以用 等 常用集合&#xff1a; 类似数组集合&#xff1a;ArrayList List<&g…

对std::listT的封装

由于工作的原因&#xff0c;需要在线程安全的情况下对std::list<T>进行该list进行访问&#xff0c;因此就简单的封装了下&#xff0c;代码如下&#xff1a; template<typename T> class List { public:List () {}~List () {}void PushBack(const T& value) {b…

code

// 控制字体系列。"editor.fontFamily": "Droid Sans Mono, monospace, monospace, Droid Sans Fallback",// 覆盖当前所选颜色主题中的编辑器颜色和字体样式。"editor.tokenColorCustomizations": {},// 控制差异编辑器是否将对前导空格或尾随空…

SWISHMAX2脚本整理及Swishmax使用技巧

wish Max让你更快速更简单地在你的网页中加入Flash动画,超过230种可选择的预设效果.SWiSH是一个快速、简单且经济的方案,让你可以在你的网页 中加入Flash动画.只要点几下鼠标,你就可以加入让你的网页在众多网站中令人注目的酷炫动画效果.你可以创造形状、文字、按钮以及移动路径…

MAC机路由管理

On the Mac the command is similar, but a bit different Just as a note to myself and anyone else interested:add network:1sudo route add -net 10.67.0.0/16 192.168.120.254Add hostsudo route add -host 10.67.0.0/16 192.168.120.254转载于:https://blog.51cto.com…

Redis的持久化机制

Redis 的数据全部在内存里&#xff0c;如果突然宕机&#xff0c;数据就会全部丢失&#xff0c;因此必须有一种机制来保证 Redis 的数据不会因为故障而丢失&#xff0c;这种机制就是 Redis 的持久化机制。 Redis 的持久化机制有两种&#xff0c;第一种是RDB快照&#xff0c;第二…

今天用python的turtle简单画了一副眼镜

画的不太好看&#xff0c;下次要继续努力鸭!!! 这个是代码~ 1 from turtle import*2 pencolor("blue")3 fillcolor("white")4 setup(500,1000,100,10)5 speed(2)6 pensize(4)7 begin_fill()8 circle(40,450)9 goto(70,40) 10 circle(-40,360) 11 penup() 1…

怎么样能找到国外的群?

怎么样能找到国外的群和老外聊天,学习呢&#xff1f;给你条途径。 先申请个MSN&#xff0c;作为固定的聊天基地。 在去WWW.OICQ.COM。 这是个外国的聊天网址&#xff0c;去那边的聊天室&#xff08;临时聊天基地&#xff0c;用来找新网友&#xff09;聊天。若是有个谈的来的&am…

redis RDB持久化中save和bgsave区别

SAVE 和 BGSAVE 两个命令都会调用 rdbSave 函数&#xff0c;但它们调用的方式各有不同&#xff1a; SAVE 直接调用 rdbSave &#xff0c;阻塞 Redis 主进程&#xff0c;直到保存完成为止。在主进程阻塞期间&#xff0c;服务器不能处理客户端的任何请求。BGSAVE 则 fork 出一个…