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
智能指针
C++面试:对象生命周期 & 垃圾回收
目录对象生命周期垃圾回收手动内存管理
智能指针
std::unique_ptr示例std::shared_ptr示例资源获取即初始化(RAII)文件句柄的RAII示例面试准备理解和实践案例分析案例1:使用
智能指针
案例
Thomas_Lbw
·
2024-01-12 11:39
c++
面试
C++
24-1-9 bilibilic++音视频
下午两点面试,面试官迟到了一会,面试官人很好,整体面试经历很不错,但是我人太紧张了,基础知识掌握的深度不够,没有深挖,是做音视频的底层相关的,实习要求只要每天打卡够九个小时就行c++有哪些新特性
智能指针
有哪些
狗狗狗乖乖
·
2024-01-12 02:15
实习面试
c++
面试
42
智能指针
auto_ptr, unique_ptr,shared_ptr,weak_ptr 整理
这是因为
智能指针
有自己管理指向对象的能力,包括释放指向的内存,因此开发者不要自己释放。
hunandede
·
2024-01-11 17:23
算法
OSG
智能指针
学习2
根据osg资料,所有osg场景的节点都采用引用计数方式;当引用计数为0,此对象将被自动释放;还没看手册,VS中智能提示中有referenceCount()函数,从名字看此函数是返回引用计数;根据资料,ref()是对节点的引用计数加1,unref()是对节点的引用计数减1;下面测试一下;#include#include#include#include#include#include#include#
bcbobo21cn
·
2024-01-11 14:41
VC++
图形学和3D
智能指针
引用计数
ref
unref
weak_ptr如何能做到解决循环引用又能传递参数呢?
于是便用C++的
智能指针
想出了一种场景:就是既有循环又得传递参数的
qq_42987967
·
2024-01-11 12:14
编程语言学习笔记C#
开发语言
C#
c++
垃圾回收
c++-
智能指针
所以C++在ISO98标注中引入了
智能指针
的概念,并在C++11中趋于完善。使用
智能指针
可以让堆内存对象具有栈内存对象的特性。原理时给需要自动回收的堆内存对象套上一层栈内存的模板类对象即可。
满山的猴子我的腚最红
·
2024-01-11 02:39
C++
c++
算法
linux
C++
智能指针
智能指针
概述是什么:
智能指针
是C++中用来管理动态内存的一种机制。它通过对指针对象进行封装,使得在特定的作49·47用域内自动管理内存的分配和释放。
代钦塔拉
·
2024-01-11 01:42
笔记
Qt
智能指针
QScopedPoint用法
1.
智能指针
是什么
智能指针
是C++11引入的一种指针封装类型,用于自动管理动态分配的内存。
智能指针
的目的是解决传统裸指针带来的内存泄漏、悬挂指针等问题,并使代码更安全、更易读。
FreeLikeTheWind.
·
2024-01-10 23:51
Qt记录
qt
开发语言
【liunx】线程池+单例模式+STL,
智能指针
和线程安全+其他常见的各种锁+读者写者问题
线程池+单例模式+STL,
智能指针
和线程安全+其他常见的各种锁+读者写者问题1.线程池2.线程安全的单例模式3.STL,
智能指针
和线程安全4.其他常见的各种锁4.读者写者问题喜欢的点赞,收藏,关注一下把
LuckyRich1
·
2024-01-10 07:30
Linux
单例模式
c++
安全
linux
运维
8-C++的nullptr、 自动类型推导 、进制输出、设置场宽相关知识点
目录share_ptr其他nullptr自动类型推导进制输出设置场宽share_ptr一个资源在多个指针之间共享,每当有一个
智能指针
管理资源的时候,使用计数加1,当一个智能释放管理权的时候,使用计数减1
Summer_taotao
·
2024-01-10 01:32
c++
算法
数据结构
objectArx --- 实体类AcDbEntity方法
目录一、实体类1.1继承关系1.2实体
智能指针
二、AcDbEntity类方法2.1概述2.2颜色方法2.3线型2.3.1线型种类2.3.2线型比例2.4实体可见性2.5实体图层2.6实体线宽三、其他简单操作
chuck-Gemini
·
2024-01-09 20:31
#
OBJECTARX
make_unique 数组,
智能指针
【C++14算法】make_unique_c++make_unique-CSDN博客#include#includeintmain(){std::size_tsize=5;std::unique_ptrptr=std::make_unique(size);for(std::size_ti=0;i
sun007700
·
2024-01-09 15:57
c++
算法
开发语言
【C++之单例模式】
1.1实现单例模式的三个要点1.2单例模式分类2.懒汉式2.1懒汉实现:基础方法2.2懒汉实现:基于单锁2.3懒汉实现:基于双重检测锁2.4懒汉实现:基于双重检测锁和资源管理2.4.1
智能指针
方式2.4.2
花好约猿上王者
·
2024-01-09 07:28
c++
c++
单例模式
智能指针
C++里面的四个
智能指针
:auto_ptr,shared_ptr,weak_ptr,unique_ptr其中后三个是c++11支持,并且第一个已经被11弃用。
DazzyG
·
2024-01-09 03:20
设计模式之单例模式
=delete实现方式1.静态局部变量方式2.静态成员变量方式3.双重检测指针和atexit方式4.双重检测指针和自定义销毁器方式5.
智能指针
方式6.
智能指针
和自定义销毁器方式7.Qt的原子指针方式优点缺点使用场景概述单例模式是创建型设计模式中的一种
十五年专注C++开发
·
2024-01-08 11:29
#设计模式/架构设计
设计模式
单例模式
c++
C++中的new和delete
相关文章C++
智能指针
文章目录相关文章前言一、new运算符1.operatornew函数的范围2.在类中重载new运算符3.分配失败二、delete运算符1.内存泄露统计示例2.在类中重载delete运算符总结前言
五轮车
·
2024-01-07 07:39
C++基础
c++
java
jvm
C++ std::unique_ptr 详解
概述std::unique_ptr是C++11中引入的
智能指针
,用于管理动态分配的对象。它提供了独占所有权的能力,确保资源在不再需要时自动释放。
半笺寄怀
·
2024-01-07 04:22
修炼C++
c++
开发语言
C++——
智能指针
和RAII
该文章代码均在gitee中开源C++
智能指针
hpphttps://gitee.com/Ehundred/cpp-knowledge-points/tree/master/%E6%99%BA%E8%83%
鹅一百
·
2024-01-06 17:12
C++
c++
开发语言
C++,
智能指针
详解(面试)
智能指针
C++中的
智能指针
是一种用于管理动态分配的内存资源的指针类模板。它们提供了自动内存管理,帮助避免内存泄漏和悬空指针的问题,同时减少了手动释放内存的负担。
奇睿海
·
2024-01-06 14:10
面试
C++
c++
面试
C++学习笔记(二十五):c++
智能指针
智能指针
不需要自己去delete一个new的对象,会自动释放对应的内存空间。unique_ptr:作用域指针,超出作用域后自动释放分配的内存区域。
pcop
·
2024-01-06 12:14
c++
学习
笔记
[C++] Boost
智能指针
——boost::shared_ptr(使用及原理分析)
简介boost::shared_ptr是可以共享所有权的指针。如果有多个shared_ptr共同管理同一个对象时,只有这些shared_ptr全部与该对象脱离关系之后,被管理的对象才会被释放。通过下面这个例子先了解下shared_ptr的基本用法:1#include2#include3#include45usingnamespacestd;67classBook8{9private:10strin
dxmcu
·
2024-01-05 21:35
boost
C++
智能指针
1.
智能指针
1.1知识点1.1.1为什么要提出
智能指针
?
进击的菜鸟子
·
2024-01-05 19:33
C++
c++
算法
c语言
linux
c++string 加引号_C++|引用计数与shared_ptr
智能指针
(以实现String类为例)
C++中,动态内存的管理是通过一对运算符来完成的,new用于申请内存空间,调用对象构造函数初始化对象并返回指向该对象的指针。delete接收一个动态对象的指针,调用对象的析构函数销毁对象,释放与之关联的内存空间。动态内存的管理在实际操作中并非易事,因为确保在正确的时间释放内存是极其困难的,有时往往会忘记释放内存而产生内存泄露;有时在上游指针引用内存的情况下释放了内存,就会产生非法的野指针(悬挂指针
weixin_39624429
·
2024-01-05 16:58
c++string
加引号
c++
智能指针
unique_ptr
使用指针时很容易出现内存泄漏,便引入了
智能指针
,c++11中主要有三类std::unique_ptr:独占资源指针,同一时刻只能有一个指针指向同一个对象std::shared_ptr:共享资源指针,同一时刻可以有多个指针指向同一个对象
Tang Paofan
·
2024-01-05 07:57
C++/C
#智能指针
c++
笔记
C++学习(五)类和动态内存分配
(new和delete)VS(
智能指针
)对象的生命周期:全局对象:程序启动时分配,程序结束时销毁局部自动对象:进入块时分配,离开块时销毁局部static对象:第一次使用时分配,程序结束时销毁c++中使用
Fighting++++
·
2024-01-05 02:47
C++
C++
智能指针
的延迟报错问题
最近工作上发现一个比较复杂的代码出现随机报错问题,话不多说,直接debug模式开启ASAN机制构建程序,set(CMAKE_CXX_FLAGS"${CMAKE_CXX_FLAGS}-O0-g-fstack-protector-fsanitize=address-fno-omit-frame-pointer")很快能定位到报错的行,调用某个对象的成员函数的内部报错,说某个成员锁对象有问题,非法读取内
haithink
·
2024-01-04 20:51
C++
c++
开发语言
C++垃圾回收机制
您可以使用使用RAII的
智能指针
(如果指针允许共享访问,则使用引用计数)来确定何时删除对象。一个好的
智能指针
库是Boost的
智能指针
。绝大多数情况下的
智能指针
可以取代原始指针。
简单的绿竹
·
2024-01-04 10:10
Java
c++
java
jvm
Ceph源码分析-std::unique_ptr<rgw::sal::RGWObject::WriteOp> obj_op = head_obj->get_write_op(&obj_ctx);
std::unique_ptrobj_op=head_obj->get_write_op(&obj_ctx);这行代码是C++代码,涉及到
智能指针
和某个对象或库的特定操作。
瓦哥架构实战
·
2024-01-04 09:14
Ceph源码分析
ceph
算法
boost
智能指针
1概述1998年修订的第一版C++标准只提供了一种
智能指针
:std::auto_ptr。它基本上就像是个普通的指针:通过地址来访问一个动态分配的对象。
lucky1_1star
·
2024-01-04 05:49
c++
c++ std::enable_shared_from_this 的作用
比如说在类的内部直接使用std::shared_ptr(this),就会导致
智能指针
失效。常见的场景:通过std::bind生成functor
sweetorange
·
2024-01-04 04:58
fa1
智能指针
Dev
1.为什么使用
智能指针
?因为之前有内存泄露的问题,所以转向
智能指针
;
智能指针
是一个解决问题的神器,尤其是一些涉及多线程的场景下。本文将介绍
智能指针
可以解决的问题,用法及最佳实践。
曼城英泽
·
2024-01-03 08:52
f6cPlus
c++
开发语言
a2面试总结--c++新特性
纳磁生物面试总结:面试总结:1.
智能指针
在多线程使用中安全的吗?
曼城英泽
·
2024-01-03 08:51
c++
面试
开发语言
智能指针
之shared_ptr初始化,引用计数,常用操作和自定义删除器等等03
一share_ptr1share_ptr基础1)共享所有权,不是被一个shared_ptr拥有,而是被多个shared_ptr之间相互协作。shared有额外开销。2)工作原理:利用引用计数的方法管理一片内存,每增加一个shared_ptr,count数加1,同理,每减少一个shared_ptr,count减1;这种引用也称为强引用。3)最后一个指向该内存对象的shared_ptr在什么情况下,会
Mango酱
·
2024-01-02 07:02
C++新特性相关
c++
指针
shared_ptr的学习
内容摘自:《深入应用C++11代码优化与工程级应用》
智能指针
是存储指向动态分配(堆)对象指针的类。用于生存期控制。确保在离开指针所在作用域时,自
lpl轻舟已过万重山
·
2024-01-02 07:00
c++
算法
开发语言
条款13:以对象管理资源
文章目录没有管理的情况解决办法之unique_ptr
智能指针
解决办法之shared_ptr
智能指针
总结没有管理的情况 资源是指一旦你使用完它,就需要返回系统的东西。
ccloud11
·
2024-01-01 23:30
Effective
C++
c++
c++
Modern C++ for C程序员 第2部分
文章目录ModernC++forC程序员第2部分命名空间类资源获取即初始化(RAII)
智能指针
线程,原子操作锁错误处理总结这是berthubert的系列文章,旨在帮助c代码人快速了解c++实用的新特性。
楚谷雨
·
2024-01-01 20:47
c++
c语言
Modern C++ for C 程序员 第5部分
文章目录ModernC++forC程序员第5部分内存管理复制省略或返回值优化
智能指针
初识:std::unique_ptrstd::move
智能指针
和多态性placementnew其他的一些建议总结这是berthubert
楚谷雨
·
2024-01-01 20:47
c++
c语言
java
【Linux】线程池设计/单例模式/STL、
智能指针
与线程安全/读者写者问题
文章目录一、线程池二、线程安全的单例模式1.单例模式的特点2.饿汉实现方式和懒汉实现方式3.懒汉方式实现单例模式(线程安全版本)三、STL,
智能指针
和线程安全四、常见的各种锁五、读者写者问题1.读写锁2
椿融雪
·
2024-01-01 18:55
Linux系统编程
linux
单例模式
c++
线程池
STL
智能指针与线程安全
读者写者问题
C++学习七:异常处理、转换函数、
智能指针
一.异常处理1.核心思想让函数的设计者去检查错误,检查到错误时抛出异常,而函数的使用者捕获异常并处理异常2.C++的异常处理机制有3部分组成:try(检查错误)->throw(抛出异常)->catch(捕获异常)3.异常语法形式try{//检查错误if(错误)throw异常}catch(异常1){处理异常}catch(异常2){处理异常}eg:intdivior(intx,inty) {
西装没钱买
·
2024-01-01 01:16
c++
学习
C++入门13 -- 类型转换,新特性,异常,
智能指针
类型转换C语言类型转换:(type)expressionexpression(type)#includeusingnamespace::std;intmain(intargc,constchar*argv[]){inta=10;doubled1=(double)a;doubled2=double(a);return0;}C++语言类型转换:xx_cast(expression)const_cast
YanZi_33
·
2023-12-31 13:33
C++11 特性
目录C++11简介{}初始化std::initializer_listautodecltypenullptr范围for循环C++98的循环方式:C++11的范围遍历:
智能指针
1.为什么需要
智能指针
?
Obto-
·
2023-12-31 12:39
c++
c++
c语言
C++面向对象(OOP)编程-C++11新特性详解
引入的auto,
智能指针
、线程机制都使得C++语言的灵活性、安全性、并发性有了很大的提升。本文会比较详细的介绍C++11引入的新特性,以及各自引入的原因和基本的用法。
发狂的小花
·
2023-12-31 07:48
C/C++精进之路
c++
开发语言
C++11新特性
并发
泛型编程
2023令我惊叹的C++代码用法
下面将介绍五个C++高级代码知识,包括虚函数、模板、
智能指针
、多线程和RAII。同时,我会展示一个最令自己惊叹的C++代码,并解释它的用途和用法。
VNGRY
·
2023-12-31 05:20
c++
开发语言
02
智能指针
->
智能指针
本质上就是RAII资源管理功能的自然展现。1.模板化和易用性:能够包装任意类型的指针。
半盏清茶_6300
·
2023-12-31 01:55
Qt基础之四十三:Qt
智能指针
(QPointer、QSharedPointer、QWeakPointer和QScopedPointer)
一.QPointerQPointer是一个模板类,用于指向QObject或其派生类对象。当QPointer指向的对象销毁时,它会被自动设置为nullptr(在QObject析构时),这和普通C++指针是不同的(普通的C++指针delete后会变为“悬空指针”,需要手动设置为nullptr)。QPointer的使用场景:QPointer指向的对象可能在其他地方也用到了,那么在使用这个QPointer
草上爬
·
2023-12-30 05:28
Qt那些事儿
qt
QPointer
智能指针
QSharedPointer
QWeakPointer
QScopedPointer
C++中dynamic_cast和dynamic_pointer_cast
其用途跟非
智能指针
的cast意思相同:stat
Folllll
·
2023-12-30 01:14
C++
多态
指针
c++
boost
【QT】qt的
智能指针
智能指针
C++标准库中的三种
智能指针
:std::shared_ptr:使用引用计数,每一个shared_ptr的拷贝都指向相同的内存,每次拷贝都会触发引用计数+1,每次生命周期结束析构的时候引用计数-1
我不是程序猿儿
·
2023-12-30 00:04
QT之路
qt
开发语言
C++
智能指针
的引用计数原理以及 mutable 关键字的使用场景
1和2可以不看1、const成员函数2、使用mutable的场景举例3、侵入式引用计数mutable用于修饰类的成员变量,表示该成员变量可以在被标记为const的成员函数内修改。1、const成员函数在C++中,将成员函数标记为const有两个主要目的:约定和安全性:使用const关键字是为了表达一个承诺,即该成员函数不会修改对象的状态,这增加了对于程序员来说的可读性。在const成员函数内部,编
宗浩多捞
·
2023-12-29 19:59
C++
c++
开发语言
算法
6. C++的引用与指针
摘要:本文首先介绍C++的内存模型和变量周期作为知识背景,接着对C++中的引用和指针(原始指针和
智能指针
)进行介绍。1.对象生命周期什么是对象生命周期?
liu_xfx
·
2023-12-29 07:27
系统C++学习
c++
c++ 技巧
智能指针
指针管理的困难:1.资源释放了,指针没有置空(1)野指针指针没有置空,后续接着使用。
不负长风
·
2023-12-29 06:35
c
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
其他