c++ 智能指针shared_ptr与make_shared

shared_ptr是C++11引入的一种智能指针,‌它允许多个shared_ptr实例共享同一个对象,‌通过引用计数来管理对象的生命周期。‌当最后一个持有对象的shared_ptr被销毁时,‌它会自动删除所指向的对象。‌这种智能指针主要用于解决资源管理问题,‌避免内存泄漏。‌

make_shared是C++标准库中的一个函数,‌用于创建一个shared_ptr智能指针,‌它接受一个或多个参数来构造一个对象,‌并返回一个指向该对象的shared_ptr。‌这个函数内部会动态分配对象,‌并初始化一个shared_ptr来管理这个对象的生命周期

 std::shared_ptr<SerialModbus> serial_modbus_ptr;

serial_modbus_ptr = std::make_shared<SerialModbus>();

serial_modbus_ptr可访问类SerialModbus的成员指针

 

---------------------------------------------------------------------------------------------------------------------------------

std::shared_ptr<SerialModbus> serial_modbus_ptr;

serial_modbus_ptr = std::shared_ptr<SerialModbus>();

serial_modbus_ptr不可访问类SerialModbus的成员指针

引发了异常: 读取访问权限冲突。
this 是 nullptr。

 

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

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

相关文章

【运维自动化-配置平台】模型及模型关联最小化实践

蓝鲸智云配置平台&#xff0c;以下简称配置平台 我们知道主机是配置平台最常见的管控资源对象&#xff0c;在业务拓扑里可以通过划分模块来清晰的可视化管理&#xff1b;那其他资源如何通过配置平台来纳管呢&#xff0c;比如网络设备交换机。场景需求&#xff1a;如何把交换机…

【前端 10】初探BOM

初探BOM&#xff1a;浏览器对象模型 在JavaScript的广阔世界中&#xff0c;BOM&#xff08;Browser Object Model&#xff0c;浏览器对象模型&#xff09;扮演着举足轻重的角色。它为我们提供了一套操作浏览器窗口及其组成部分的接口&#xff0c;让我们能够通过编写JavaScript…

QT--线程

一、线程QThread QThread 类提供不依赖平台的管理线程的方法&#xff0c;如果要设计多线程程序&#xff0c;一般是从 QThread继承定义一个线程类&#xff0c;在自定义线程类里进行任务处理。qt拥有一个GUI线程,该线程阻塞式监控窗体,来自任何用户的操作都会被gui捕获到,并处理…

【PyQt5】一文向您详细介绍 setPlaceholderText() 的作用

【PyQt5】一文向您详细介绍 setPlaceholderText() 的作用 下滑即可查看博客内容 &#x1f308; 欢迎莅临我的个人主页 &#x1f448;这里是我静心耕耘深度学习领域、真诚分享知识与智慧的小天地&#xff01;&#x1f387; &#x1f393; 博主简介&#xff1a;985高校的普通…

脑网络布线成本优化——从Caja守恒原则到最小化成本的探索

脑网络布线成本优化——从Caja守恒原则到最小化成本的探索 Caja守恒原则的核心作用 Caja守恒原则&#xff0c;即大脑组织的布线成本最小化原则&#xff0c;是神经科学中的一个重要概念。它指出&#xff0c;大脑在组织结构上倾向于最小化连接神经元以构成环路或网络所涉及的布…

【MySQL】记录MySQL加载数据(LOAD DATA)

MySQL LOAD DATA 一、背景二、模拟生成用户信息三、加载到mysql表3.1、建表语句3.2 加载数据3.3、查看结果 一、背景 现在有个需求是将用户信息存入student.data文件中&#xff0c;在现在load到数据库中 二、模拟生成用户信息 假设用户信息&#xff0c;包含姓名&#xff0c;…

C++和R穿刺针吸活检肿瘤算法模型模拟和进化动力学量化差异模型

&#x1f3af;要点 &#x1f3af;模拟肿瘤细胞增生进化轨迹 | &#x1f3af;肿瘤生长的随机空间细胞自动机模型 | &#x1f3af;模拟穿刺活检的收集空间局部的肿瘤块&#xff0c;模拟针吸活检采集长而薄的组织样本 | &#x1f3af;构建不同参数模拟合成肿瘤测试集 | &#x1f…

LangChain--如何使用大模型

【&#x1f34a;易编橙终身成长社群&#x1f34a;】 大家好&#xff0c;我是小森( &#xfe61;ˆoˆ&#xfe61; ) &#xff01; 易编橙终身成长社群创始团队嘉宾&#xff0c;橙似锦计划领衔成员、阿里云专家博主、腾讯云内容共创官、CSDN人工智能领域优质创作者 。 LangCha…

Linux——简介

Linux的组成 Linux系统一般由四个主要部分组成&#xff1a;内核、shell、文件系统和应用程序。 内核&#xff1a;是操作系统的核心&#xff0c;负责管理系统的进程、内存、设备驱动程序、文件和网络系统等&#xff0c;决定着系统的性能和稳定性。shell&#xff1a;是系统的用…

2024:Qt--编译配置Protobuf(windows10) 配图详解

这里写自定义目录标题 一、准备1、Window10系统2、Qt Creator 5.0.2 Based on Qt 5.15.2 (MSVC 2019, 64 bit)3、protobuf-3.15.0&#xff08;本示例使用版本&#xff09;4、cmake-3.21.3-windows-x86_64&#xff08;本示例使用&#xff0c;下载的zip直接解压使用&#xff09; …

自编码器(autoencoder)

1.自编码器的由来 最初的自编码器是用来降维的&#xff0c;后来也逐渐用于去噪、生成任务。 2.自编码器的基本结构 自编码器&#xff08;autoencoder&#xff09;内部有一个隐藏层 h&#xff0c;可以产生编码&#xff08;code&#xff09;表示输入。该网络可以看作由两部分组…

ArcGIS Desktop使用入门(四)——ArcMap软件彻底卸载删除干净

系列文章目录 ArcGIS Desktop使用入门&#xff08;一&#xff09;软件初认识 ArcGIS Desktop使用入门&#xff08;二&#xff09;常用工具条——标准工具 ArcGIS Desktop使用入门&#xff08;二&#xff09;常用工具条——编辑器 ArcGIS Desktop使用入门&#xff08;二&#x…

支持向量机回归及其应用(附Python 案例代码)

使用支持向量机回归估计房价 让我们看看如何使用支持向量机&#xff08;SVM&#xff09;的概念构建一个回归器来估计房价。我们将使用sklearn中提供的数据集&#xff0c;其中每个数据点由13个属性定义。我们的目标是根据这些属性估计房价。 引言 支持向量回归&#xff08;SV…

vim的使用及退出码(return 0)

linux基础之vim快速入门 linux基础之vim快速入门_基本linux vim-CSDN博客https://blog.csdn.net/ypxcan/article/details/119878137?ops_request_misc&request_id&biz_id102&utm_termvim%E7%BC%96%E8%BE%91%E5%99%A8%E5%A4%8D%E5%88%B6%E7%B2%98%E8%B4%B4%E4%BA%…

Java(十)——接口

个人简介 &#x1f440;个人主页&#xff1a; 前端杂货铺 ⚡开源项目&#xff1a; rich-vue3 &#xff08;基于 Vue3 TS Pinia Element Plus Spring全家桶 MySQL&#xff09; &#x1f64b;‍♂️学习方向&#xff1a; 主攻前端方向&#xff0c;正逐渐往全干发展 &#x1…

JAVA零基础学习3(Scanner类,字符串,StringBuilder,StringJoinder,ArrayList成员方法)

JAVA零基础学习&#xff13; Scanner类输入示例代码代码解释完整代码1. 读取字符串2. 读取整数3. 读取浮点数4. 读取布尔值5. 读取单个单词6. 读取长整型数7. 读取短整型数8. 读取字节数注意事项总结 API 字符串解释示例解释解决方法示例&#xff1a;使用 StringBuilder String…

口碑爆棚的高分法国电影,一起在光影中领略法式魅力吧!

文章目录 引言《与玛格丽特的午后》(网友评分:9.1)《午夜巴黎》(网友评分:8.3)《玫瑰人生》(网友评分:8.4)《双姝奇缘》(网友评分:8.7)《巴黎淘气帮》(网友评分:8.6)《触不可及》(网友评分:9.3)《爱在日落黄昏时》(网友评分:8.9)《悲惨世界》(网友评分:…

VScode使用Github Copilot插件时出现read ECONNREST问题的解决方法

文章目录 read ECONNREST查看是否仍是 Copilot 会员查看控制台输出网络连接问题浏览器设置问题笔者的话 read ECONNREST 最近使用 Copilot 时一直出现 read ECONNREST 问题&#xff0c;这个表示连接被对方重置了&#xff0c;就是说在读取数据时连接被关闭。 我首先怀疑是不是…

[023-2].第2节:SpringBoot中接收参数相关注解

我的后端学习大纲 SpringBoot学习大纲 1.1.基本介绍&#xff1a; SpringBoot接收客户端提交的数据、参数会使用的一些注解&#xff1a; 1.PathVarible2. RequestHeader3.RequestParam4.CookieValue5.RequestBody6.RequestAttribute 1.2.接收参数相关注解与应用实例&#xff1a;…

无人机制造工艺流程详解

一、需求分析 无人机制造的第一步是需求分析。这一阶段主要明确无人机的使用场景、功能要求、性能指标以及成本预算等。通过与客户或项目团队的深入沟通&#xff0c;确保对无人机的需求有全面而准确的理解。同时&#xff0c;也需要进行市场调研&#xff0c;了解同类型产品的特…