E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
Shared_ptr
C++学习笔记----6、内存管理(五)---- 智能指针(3)
2、
shared_ptr
有时候吧,有些对象或者一部分代码需要同一个指针的拷贝。那么unique_ptr不能被拷贝,因此就不能用于些场景。
王俊山IT
·
2024-09-14 20:42
c++
学习
笔记
开发语言
C++新特性以及应用场景
智能指针(SmartPointers):自动管理内存,如std::unique_ptr和std::
shared_ptr
。
平凡而伟大(心之所向)
·
2024-09-14 05:32
编程语言
c++
开发语言
C++学习笔记----6、内存管理(五)---- 智能指针(4)
3、weak_ptr在C++中还有一个与
shared_ptr
相关的智能指针叫做weak_ptr。weak_ptr可以包含一个被
shared_ptr
管理的资源的引用。
王俊山IT
·
2024-09-13 17:51
c++
学习
笔记
开发语言
C++学习笔记(12)
194、智能指针shared_ptrshared_ptr共享它指向的对象,多个
shared_ptr
可以指向(关联)相同的对象,在内部采用计数机制来实现。
月夕花晨374
·
2024-09-09 23:31
c++
学习
笔记
C++ 满足某些条件可以当成rust 用
4.多线程使用
shared_ptr
或weak_ptr避免内存泄露。当然满足这些条件,有些程序编不了,但是如
flowesy
·
2024-09-08 20:25
c++
开发语言
【C++】智能指针——auto_ptr,unique_ptr,
shared_ptr
目录auto_ptrunique_ptrshared_ptr并发问题循环引用问题个人主页:传送门——>东洛的克莱斯韦克智能指针的原理:传送门——>智能指针的原理auto_ptr使用方法参考官方文档传送门——>auto_ptr文档auto_ptr并不是一个优秀的智能指针,它的设计理念是——管理权转移。如下代码示意auto_ptr(auto_ptr&sp):_ptr(sp._ptr){//管理权转移s
东洛的克莱斯韦克
·
2024-09-02 12:24
C++
c++
开发语言
智能指针
代码随想录八股训练营第二十五天| C++
1.1.智能指针的类型:1.1.1.std::unique_ptr:1.1.2.std::
shared_ptr
:1.1.3.std::weak_ptr:1.1.4.std::auto_ptr:1.1.5
朝闻dao
·
2024-09-01 16:13
c++
使用C++开发黑神话悟空类似3A如何避免内存泄漏
智能指针:使用C++11或更高版本中的智能指针(如std::unique_ptr、std::
shared_ptr
和std::weak_ptr)来自动管理内存。
Code apprenticeship
·
2024-08-30 07:06
后端
c++
java
开发语言
c++11之智能指针(详解)
头文件:#includeshared_ptr、unique_ptr和weak_ptr的区别:初始化
shared_ptr
智能指针:初始化unique_ptr指针自定义删除器weak_ptr的基本使用智能指针进阶
星海逐愿
·
2024-08-25 02:58
c/c++
c++
开发语言
昇腾 - AscendCL C++应用开发 线程安全的队列
recursive_mutex、shared_mutexC++线程间同步的条件变量std::condition_variable和std::condition_variable_anyC++提供的智能指针unique_ptr、
shared_ptr
西笑生
·
2024-08-24 08:43
嵌入式深度学习
c++
昇腾
AscendCL
Ascend
C++异步编程之std::promise与std::future使用示例
1.创建promise对象:std::
shared_ptr
>_discovery_promise=std::make_shared>();2.获取promise对象的future实例autofuture
编程汇
·
2024-08-23 15:20
C++
c++
开发语言
C++智能指针配合STL模板类
代码#include#include#includeclassResID{public:usingSP=std::
shared_ptr
;ResID()=default;ResID(conststd::string
码力码力我爱你
·
2024-08-21 23:17
C++
教程
c++
开发语言
stl
C++智能指针_C++回顾
发展历史C++98中产生了第一个智能指针auto_ptr;C++boost给出了更实用的scoped_ptr和
shared_ptr
和weak_ptr;C++TR1,引入了
shared_ptr
等,不过TR1
工业废气
·
2024-03-01 00:07
C++
c++
开发语言
后端
《白话C++》第10章 STL和boost,Page98 10.4.6 std::weak_ptr
shared_ptr
的设计“命中注定”有一个重大的“缺陷”,那就是它也会产生“循环引用”问题。
yanzhenxi
·
2024-02-20 20:20
《白话C++》智能指针专辑
《白话C++》学习
《白话C++》第10章
STL和boost
c++
《白话C++》第10章 STL和boost,Page101 10.4.6 std::weak_ptr
weak_ptr并不是真正的智能指针,它必须依附于
shared_ptr
存在。
yanzhenxi
·
2024-02-20 20:20
《白话C++》智能指针专辑
《白话C++》学习
《白话C++》第10章
STL和boost
c++
开发语言
《白话C++》第10章 STL和boost,Page97
shared_ptr
管理数组
7.管理数组std::unique_ptr可以管理单一对象,也可以管理堆数组:std::unique_ptra(newint[9]);a[0]=1;std::unique_ptr这个本事,std::
shared_ptr
yanzhenxi
·
2024-02-20 20:20
《白话C++》智能指针专辑
《白话C++》学习
《白话C++》第10章
STL和boost
c++
《白话C++》第10章 STL和boost,Page84
shared_ptr
示例使用,容器中的指针
这个问题,通过std::
shared_ptr
都可以完美地解决:#include#include#include#include//STL的智能指针#includeusingnamespacestd;structBigS
yanzhenxi
·
2024-02-20 06:25
《白话C++》智能指针专辑
《白话C++》学习
《白话C++》第10章
STL和boost
c++
开发语言
掘根宝典之C++智能指针模板类(auto_ptr,unique_ptr,
shared_ptr
,weak_ptr)
什么是智能指针说白了,智能指针就是类似于指针的类对象,但是功能比指针多。智能指针是一种在程序中管理动态分配的内存的工具。智能指针提供了一种机制来自动分配和释放内存,从而减少内存泄漏和悬挂指针的风险。智能指针通过将内存的所有权转移到指针对象本身,可以在对象不再需要时自动释放内存。智能指针通常会在构造函数中分配内存,并在析构函数中释放内存。此外,智能指针还提供了一些额外的功能,如拷贝构造函数和移动构造
掘根
·
2024-02-19 22:34
c++
c++
开发语言
shared_ptr
放入vector,要及时clear,避免内存泄漏
最近碰到一个内存泄漏的问题,查了半天发现是vector数组的成员中有共享指针,而vector没有释放引用计数导致的。下面简化一下这个问题,直接看代码:#include#include#includeusingnamespacestd;intmain(){shared_ptra1(newint(1));cout>v1;v1.push_back(a1);cout#include#includeusin
见牛羊
·
2024-02-14 22:12
C++小技巧
c++
C++11:智能指针
诸如auto_ptr以及C++11新增的
shared_ptr
和unique_ptr等智能指针模板使得管理由new分配的内存更容易。它们是类。
BU冰糖雪梨里的梨PT
·
2024-02-13 07:38
C/C++/C#基础
c++
智能指针
智能指针、左值引用右值引用、lambda表达式
文章目录1.智能指针(
shared_ptr
、unique_ptr、weak_ptr)1.1智能指针用来解决什么问题1.2shared_ptr1.2.1shared_ptr内存模型1.2.2shared_ptr
是蜗牛骑士丫
·
2024-02-12 22:51
c++
C++:智能指针(共享指针,唯一指针,弱指针)
可以自动销毁,不需要再搭配delete//作用域指针:unique_ptr唯一参考(指向这块内存的指针唯一,如果有两个指向同一个(复制),则后一个会指向释放的内存块,死掉,因此不能copy)//共享指针
shared_ptr
你那里下代码雨了吗
·
2024-02-12 13:31
c++
java
jvm
C++11智能指针使用
shared_ptr
初始化:优先使用make_shared来构造智能指针make_shared(p)1):std::shared_ptrp(newint(1));2):std::shared_ptrp2
chendongming
·
2024-02-11 19:41
c++11之std::enable_shared_from_this入门
一、std::enable_shared_from_this应用场景在记录std::enable_shared_from_this之前,需要先看一下原始指针与
shared_ptr
在使用过程中一些问题。
YaoYuan9323
·
2024-02-11 17:46
boost
库与stl
c
11
内存管理
raw
pointer
boost
c++11之再探std::enable_shared_from_this
一、它有啥作用这个类能够让
shared_ptr
管理的资源安全的生成其他
shared_ptr
引用,从而共享这个类的某一资源(就是malloc出来的对象)。实际也是延长了资源的生命周期。
YaoYuan9323
·
2024-02-11 17:16
网络编程
boost
库与stl
boost智能指针
异步调用
c++回调
smart
ptr
c++11之weak_ptr剖析
一、概述引用《c++primer》的话:weak_ptr是一种不控制所指向对象生存期的智能指针,它指向由一个
shared_ptr
管理的对象。
YaoYuan9323
·
2024-02-11 17:45
boost
库与stl
weak_ptr
c语言智能指针是什么,c – 什么是智能指针,什么时候应该使用?
UPDATE这个答案相当陈旧,因此描述了当时的“好”,这是Boost库提供的智能指针.从C11开始,标准库提供了足够的智能指针类型,因此您应该支持使用std::unique_ptr,std::
shared_ptr
weixin_39737001
·
2024-02-11 15:13
c语言智能指针是什么
C++ 指针特别篇-指针转换和智能指针
智能指针智能指针的头文件,#include①
shared_ptr
操作引用计数实现共享式拥有的概念。多个智能指针可以指向相同的对象,这个对象和其相关资源会在最后一个被销毁时释放。
zcwfeng
·
2024-02-10 17:08
C++——智能指针——auto_ptr、
shared_ptr
、unique_ptr
C++11中提供了三种智能指针,使用这些智能指针时需要引用头文件:·
shared_ptr
;·unique_ptr;·auto_ptr;这三个智能指针模板都定义了类似指针的对象,可意义将new获得(直接或者间接
勿在浮沙築高臺
·
2024-02-10 13:05
C++
c++
让std::
shared_ptr
变成动态类型指针
作者:
[email protected]
++11中引入的
shared_ptr
可以封装了线程安全共享指针技术,给开发人员带来了很大方便。
DLite
·
2024-02-09 23:58
C/C++编程
delete
struct
class
测试
c
【C/C++ 14】C++11智能指针
目录一、智能指针概述二、auto_ptr三、unique_ptr四、
shared_ptr
五、weak_ptr六、定制删除器一、智能指针概述C++在进行异常处理的时候,若在new和delete之间或在lock
AllinTome
·
2024-02-09 19:34
C/C++
c++
开发语言
关于侵入式和非侵入式
拿智能指针举例,
shared_ptr
,即我们平时使用比较多的智能指针是非侵入式的,boost库中提供了这个指针。那么什么是侵入式指针呢。下面给出大概的代码。
LiteHeaven
·
2024-02-09 18:43
C++
侵入式
智能指针
模板
侵入式智能指针和非侵入式智能指针
一直有个疑问,为什么chromium代码没有使用
shared_ptr
呢?
写文章的思考者
·
2024-02-09 18:10
chromium
C/C++
c++
chrome
C++11智能指针
智能指针的使用及原理智能指针的使用智能指针的原理C++中的智能指针std::auto_ptrstd::unique_ptr防拷贝std::shared_ptrshared_ptr的模拟实现std::
shared_ptr
flyyyya
·
2024-02-09 10:03
c++
c++
java
算法
c++三种智能指针
shared_ptr
、weak_ptr、unique_ptr的原理和使用
c++智能指针总结一、智能指针出现的原因1.基于我们的的编程习惯,在堆区动态管理的资源忘记释放或者回收了,导致内存泄漏。2.有多个指针指向同一片内存的问题,造成内存资源的重复释放或回收。3.程序在在抛出异常前申请了资源,以至于异常抛出时导致程序中断,无法执行析构函数delete内存从而导致的内存泄漏。基于上面三个主要的原因,聪明的程序员就提出了智能指针方便管理我们自己的内存,一定程度上解决了c++
奔跑的小白、
·
2024-02-08 12:26
c++
visual
studio
c语言
c++智能指针的使用,
shared_ptr
,unique_ptr,weak_ptr
三种智能指针
shared_ptr
,unique_ptr,weak_ptr;将
shared_ptr
存放在一个容器中,不再需要它的时候,要erase掉。
xutopia77
·
2024-02-08 12:55
指针
java
内存泄漏
c++
编程语言
智能指针(
shared_ptr
、unique_ptr、weak_ptr)的使用
智能指针的使用一.shared_ptr1.创建一个shared_ptr2.shared_ptr的常用成员函数reset成员函数的使用3.==注意事项==二.unique_ptr1.unique_ptr区别于shared_ptr2.unique_ptr的成员函数与std::move()3.函数返回unique_ptr三.weak_ptr1.使用weak_ptr解决循环引用的问题C++中的智能指针实现
代码乌龟
·
2024-02-08 12:55
C/C++
C++
智能指针
c++应避免使用普通指针,而使用智能指针(包括shared,unique,weak)
智能指针在C++中,使用智能指针(如std::
shared_ptr
、std::unique_ptr和std::weak_ptr)通常被认为是比使用普通指针更安全和推荐的做法。
马上到我碗里来
·
2024-02-08 12:24
#
C语言大师
c++
开发语言
指针
cpp11新特性之智能指针(下):深入理解现代cpp中的智能指针
shared_ptr
、unique_ptr 以及 weak_ptr
今天给大家带来的是对于
shared_ptr
、unique_ptr以及weak_ptr的深入理解,通过测试案例和源码剖析对这三种重要的智能指针的使用方法,注意事项以及适用范围进行了全面的总结,相信经过这些测试大家对于智能指针的理解会更上一层楼
unknown C++ beginner
·
2024-02-08 10:37
c++学习
c++
学习
笔记
开发语言
C++ 11/14/17 智能指针
标准库提供的两种智能指针的区别在于管理底层指针的方法不同:
shared_ptr
和unique_ptr。
yaoming168
·
2024-02-07 07:29
C++语言学习
c++
智能指针
shared_ptr
shared_ptr
是通过指针保持对象共享所有权的智能指针。
shared_ptr
保存所管理对象的引用计数,当引用计数变为0时,对象将被删除。
Lucy_stone
·
2024-02-07 06:49
c++标准库基础
c++
C++实现数据库连接池
MySQL数据库编程、线程安全的懒汉单例模式、queue、C++11多线程编程、线程互斥、线程同步通信、生产者-消费者模型、基于CAS的原子整形、智能指针
shared_ptr
、lambda表达式等。
伍树明
·
2024-02-03 22:09
数据库
c++
线程池
智能指针|巨巨巨详细
智能指针shared_ptrshared_ptr的基本用法使用
shared_ptr
要注意的问题unique_ptr独占的智能指针weak_ptr弱引用的智能指针weak_ptr的基本用法weak_ptr
Phoenix Studio
·
2024-01-31 23:40
java
jvm
算法
开发语言
shared_ptr
模拟实现
智能指针原理智能指针基本上就是利用RAII技术实现的。资源取得时机便是初始化时机(ResourceAcquisitionIsInitialization)是一种利用对象生命周期来控制程序资源的技术。在对象构造时获取资源,接着控制对资源的访问,使之在对象的生命周期内始终保持有效,最后在对象析构的时候释放资源。智能指针的实现要考虑的问题:怎么实现RAII如何重载operator*和opertaor->
叫我小秦就好了
·
2024-01-31 04:37
C++
c++
数据结构
C++ 11新特性之week_ptr
除了已经广为人知的
shared_ptr
和unique_ptr之外,还有一个重要但相对较少被单独提及的智能指针类型——std::weak_ptr。
hope_wisdom
·
2024-01-30 14:27
C++
11新特性
c++
C++
11
weak_ptr
C++11:智能指针(一)
目录1、智能指针含义2、unique_ptr3、
shared_ptr
:4、weak_ptr本篇文章主要讲智能指针的基本知识,要是会,可以跳过去看指针智能实战示例。
Ivy_belief
·
2024-01-29 16:35
#
c++新特性
c++
开发语言
jvm
1024程序员节
C++11(中):智能指针
2.1RAII2.2智能指针的原理2.3std::auto_ptr2.4定制删除器2.5std::unique_ptr2.6std::shared_ptr2.7std::weak_ptr2.7.1std::
shared_ptr
派小星233
·
2024-01-29 16:03
C++进阶
c++
算法
学习
笔记
经验分享
STL源码分析:
shared_ptr
和 weak_ptr
1.shared_ptr虽然早就对
shared_ptr
的原理烂熟于心,手撕也没少做过,但有时候总感觉对其还是很陌生;在看《Linux多线程服务端编程》时,作者提到一个析构动作在创建时被捕获又彻底把我搞懵了
十一很迷茫
·
2024-01-29 12:01
C++
c++
linux
stl
阿里巴巴面试题基础篇 C++11
智能指针:C++11新增了std::
shared_ptr
、std::weak_ptr等类型
书山压力
·
2024-01-28 11:38
lio livox 保存地图PCD文件
include"Estimator/Estimator.h"typedefpcl::PointXYZINormalPointType;intWINDOWSIZE;boolLidarIMUInited=false;boost::
shared_ptr
点云-激光雷达-Slam-三维牙齿
·
2024-01-27 09:57
python实践web3开发
python
点云
c++
算法
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他