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++11智能指针
C++编程: 使用 std::enable_shared_from_this 解决多线程悬空指针(
智能指针
失效)
文章目录0.概要1.什么是`std::enable_shared_from_this`?2.`std::enable_shared_from_this`的作用3.解决悬空指针访问的问题4.无法解决的竞态条件5.enable_shared_from_this的实现原理5.1原理阐述5.2原理伪代码示例5.3原理示意图6.使用`enable_shared_from_this`常见错误情形1:情形2:其
橘色的喵
·
2025-01-24 16:25
C++
c++
智能指针
悬空指针
shared_ptr
weak_ptr
shared_from
多线程
cpp
智能指针
C++11
新增三个
智能指针
类型unique_ptrshared_ptrweak_ptr一、
智能指针
unique_ptrunique_ptr独享它指向的对象,也
xianwu543
·
2025-01-23 18:35
c++
开发语言
网络
mysql
数据库
C/C++、网络协议、网络安全类文章汇总
文章汇总C/C++编程
C++11
新特性之std::function类模
大草原的小灰灰
·
2025-01-23 11:52
网络安全
c语言
c++
网络协议
网络安全
密码学
智能指针
make_unique初始化数组的3种方法
智能指针
make_unique初始化数组的两种方法://方法1std::unique_ptrptr1{newint[5]{1,2,3,4,5}};//方法2autoptr2=std::make_unique
苏克贝塔
·
2025-01-23 10:42
C++
c++
OpenCV相机标定与3D重建(64)用于迭代地优化图像点的位置函数undistortImagePoints()的使用
操作系统:ubuntu22.04OpenCV版本:OpenCV4.9IDE:VisualStudioCode编程语言:
C++11
算法描述计算无畸变图像点的位置。
jndingxin
·
2025-01-23 04:24
OpenCV
opencv
人工智能
OpenCV相机标定与3D重建(65)对图像点进行去畸变处理函数undistortPoints()的使用
操作系统:ubuntu22.04OpenCV版本:OpenCV4.9IDE:VisualStudioCode编程语言:
C++11
算法描述从观测到的点坐标计算理想点坐标。
jndingxin
·
2025-01-23 04:24
OpenCV
opencv
OpenCV相机标定与3D重建(66)对立体匹配生成的视差图(disparity map)进行验证的函数validateDisparity()的使用
操作系统:ubuntu22.04OpenCV版本:OpenCV4.9IDE:VisualStudioCode编程语言:
C++11
算法描述使用左右检查来验证视差。矩阵“cost”应该由立体对应算法计算。
jndingxin
·
2025-01-23 04:24
OpenCV
opencv
3d
OpenCV相机标定与3D重建(2)鱼眼相机模型
操作系统:ubuntu22.04OpenCV版本:OpenCV4.9IDE:VisualStudioCode编程语言:
C++11
算法描述鱼眼相机是一种具有非常宽视野的相机,通常会产生强烈的径向畸变。
jndingxin
·
2025-01-23 04:24
OpenCV
数码相机
opencv
3d
OpenCV相机标定与3D重建(63)校正图像的畸变函数undistort()的使用
操作系统:ubuntu22.04OpenCV版本:OpenCV4.9IDE:VisualStudioCode编程语言:
C++11
算法描述转换图像以补偿镜头畸变。
jndingxin
·
2025-01-23 04:17
OpenCV
opencv
3d
C++ 条件变量-生产消费者模型
条件变量是一种线程同步机制,当条件不满足时,相关线程被一直阻塞,直到某种条件出现,这些线程才会被唤醒.
C++11
的条件变量提供了两个类:condition_variable:只支持与普通mutex搭配,
__雨夜星辰__
·
2025-01-22 18:58
c++
开发语言
学习
笔记
多线程
[并发并行]_[中级]_[C++实现synchronized方式的对象锁2.0]
说明在
C++11
提供了可复制的共享的指针std::shared_ptr,利用这个指针我们可以判断mutex有没有被其他线程使用,从而释放mutex。改进版的
Peter(阿斯拉达)
·
2025-01-22 15:05
C++语言特性和标准库
C/C++多线程并发并行
c++
同步
synchronized
对象锁
Java
mutex
thread
day 21
C++11
新特性
智能指针
右值引用和move语句auto关键字(根据初始化的值自动推导类型)lambda表达式for的范围遍历类和结构体中初始化列表nullptr代替null统一的初始化方式…
智能指针
:
智能指针
利用
qq_50996930
·
2025-01-21 23:29
C++学习专栏
c++
stl
C++面试知识点总结
5、四种强制转换6、
C++11
新特性7、C++14新特性:在
C++11
基础上做了小改动8、C++17新特性:9、指针和引用:面向对象编程思想(OOP)1、面向对象(OO)编程的基本原则:SOLID原则(
Ivy_belief
·
2025-01-21 20:04
面试必备
c++
面试
开发语言
C++11
新特性总结
C++11
的新特性1变量和基本类型1.1longlong类型扩展精度浮点数,10位有效数字1.2列表初始化初始化的几种不同形式,其中用花括号来初始化变量称为列表初始化;比如:inti=0;inti={0
weixin_30955617
·
2025-01-21 19:51
c/c++
数据结构与算法
C++11
中的新特性
C++11
中的新特性文章目录一、基于范围的for循环
C++11
提供了一个特殊版本的for循环,在很多情况下,它都可以简化数组的处理,这就是基于范围的for循环。
rainboots
·
2025-01-21 17:10
C++基础学习笔记
c++
python
算法
C++的auto_ptr
智能指针
:从诞生到被弃用的历程
C++作为一种功能强大的编程语言,为开发者提供了众多便捷的特性和工具,其中
智能指针
是其重要特性之一。
智能指针
能够自动管理内存,有效避免内存泄漏等常见问题。
码事漫谈
·
2025-01-21 15:48
c++
c++
开发语言
cpp
智能指针
C++11
新增三个
智能指针
类型unique_ptrshared_ptrweak_ptr一、
智能指针
unique_ptrunique_ptr独享它指向的对象,也
xianwu543
·
2025-01-21 14:39
c++
开发语言
mysql
数据库
网络
C++ unordered_map
最好的查询是,进行很少的比较次数就能够将元素找到,因此在
C++11
中,STL又提供了4个unordered系列的关联式容器,这四个容器与红黑树结构的关联式容器使用方式基本类似,只是其底层结构不同,该系列容
我要满血复活
·
2025-01-20 03:37
c++
开发语言
C++中的std::initializer_list详解
initializer_list是
C++11
提供的一种新类型,其定义于头文件中,此头文件是工具库的一部分,定义如下:namespacestd{templateclassinitializer_list{
一倾而尽
·
2025-01-19 15:13
C++/STL
C++11/C++14
C++
『
C++11
』模板可变参数包,Lambda表达式与 function 包装器
文章目录模板可变参数模板可变参数包的展开可变参数包与STL容器中的emplace函数关系Lambda表达式function包装器function包装器对成员函数的包装bind绑定模板可变参数模板可变参数模板是
C+
Dio夹心小面包
·
2025-01-19 14:31
C++
C++11
c++
开发语言
linux
C++ initializer_list 列表初始化(八股总结)
定义std::initializer_list是
C++11
引入的一个类模板,用于支持列表初始化。它允许开发者使用花括号{}提供一组值直接初始化容器或自定义类型。
fadtes
·
2025-01-19 14:01
C++八股
c++
游戏
C++11
特性简述
Lambda表达式捕获列表+参数列表(没有参数可以省略)+返回值+函数体类成员函数中定义lambda表达式可以捕获this指针,但是没有捕获函数参数的时候捕获this也不能访问函数参数自动推导返回值:必须是唯一形式的返回值类型才能推导出来,也就是不能出现二义性,比如返回列表时,由于数组和链表都可以以列表的形式返回,所以无法自动推导出返回值类型,这时就需要自己手动声明一下返回值类型"->返回值类型"
因特麦克斯
·
2025-01-18 20:24
c++
开发语言
在纷繁多变的世界里茁壮成长:C++ 2006–2020(4)
C++11
:感觉像是门新语言
C++11
的三个完整或几乎完整的实现在2013年面世。我当时的评论被广泛认为是准确的——
C++11
感觉像是一门新的语言[Stroustrup2014d]。为什么
C++11
在帮助程序员方面
草上爬
·
2025-01-17 23:59
C/C++
C++
C++20
【华为OD技术面试手撕真题】- C++手撕技术面试八股文(3)
、无序关联容器4、容器适配器二、STL中map和set的原理1、基本数据结构(红黑树)2、map3、set4、特点和应用三、深拷贝和浅拷贝的区别1、浅拷贝2、深拷贝四、什么情况下会调用拷贝构造函数五、
C+
KJ.JK
·
2025-01-17 11:49
华为OD技术面试手撕真题
华为od
面试
c++
华为od机试真题
华为od机试E卷
C++面试八股文
C++手撕技术面试八股文
OpenCV相机标定与3D重建(59)用于立体相机标定的函数stereoCalibrate()的使用
操作系统:ubuntu22.04OpenCV版本:OpenCV4.9IDE:VisualStudioCode编程语言:
C++11
算法描述标定立体相机设置。
jndingxin
·
2025-01-17 04:17
OpenCV
3d
opencv
OpenCV相机标定与3D重建(54)解决透视 n 点问题(Perspective-n-Point, PnP)函数solvePnP()的使用
操作系统:ubuntu22.04OpenCV版本:OpenCV4.9IDE:VisualStudioCode编程语言:
C++11
算法描述根据3D-2D点对应关系找到物体的姿态。
jndingxin
·
2025-01-17 03:37
OpenCV
opencv
3d
c++单例设计模式
文章目录1.单例模式2.饿汉模式3.懒汉模式(线程安全,加锁)4.懒汉模式(
c++11
线程安全:call_once)1.单例模式单例模式有两种1.1懒汉模式(线程不安全)需要用到对象的时候才开始创建,多个线程调用的时候可能会创建多个对象
一定会升职加薪
·
2025-01-17 01:24
设计模式
c++
设计模式
ubuntu18.04下配置muduoC++11环境
本文将详细介绍如何在Ubuntu18.04上配置Muduo并启用
C++11
特性。1.安装必要的依赖在开始配置之前,我们需要确保安装了构建工具和必要的依赖库。
·
2025-01-16 16:33
C++八股
数据结构内存排列结构体和类占用的内存:==虚函数和虚表的原理==虚函数虚表(Vtable)虚函数和虚表的实现细节==内存泄漏==指针的工作原理函数的传值和传址new和delete与malloc和freeC++内存区域划分
C+
Petrichorzncu
·
2024-09-16 06:22
八股总结
c++
开发语言
【RabbitMQ 项目】服务端数据管理模块之交换机管理
只能成功,不能失败)如果数据库(文件)不存在则创建打开数据库打开exchange_table数据库表插入交换机移除交换机将数据库中的交换机恢复到内存中传入一个哈希表,key为名字,value为交换机的
智能指针
月夜星辉雪
·
2024-09-15 16:37
rabbitmq
oracle
数据库
OpenCV结构分析与形状描述符(24)检测两个旋转矩形之间是否相交的一个函数rotatedRectangleIntersection()的使用
操作系统:ubuntu22.04OpenCV版本:OpenCV4.9IDE:VisualStudioCode编程语言:
C++11
算法描述测两个旋转矩形之间是否存在交集。
jndingxin
·
2024-09-15 10:52
OpenCV
opencv
人工智能
计算机视觉
C++学习笔记----6、内存管理(五)----
智能指针
(3)
这样的话,std::shared_ptr就是一个支持能够被拷贝的拥有共享属主的
智能指针
。但是,如果有指向同一个资源的多个shared_ptr实例,那么怎么知道什么时候去释放资源呢?
王俊山IT
·
2024-09-14 20:42
c++
学习
笔记
开发语言
[
C++11
] 移动语意和移动构造函数
说明:移动语义(MoveSemantics)是
C++11
引入的一个重要概念,旨在提高大型对象(特别是那些涉及资源管理的对象)的复制效率。
图王大胜
·
2024-09-14 18:56
计算机学科基础
开发语言
c++
移动语意
移动构造函数
C++新特性以及应用场景
智能指针
(SmartPointers):自动管理内存,如std::unique_ptr和std::shared_ptr。
平凡而伟大(心之所向)
·
2024-09-14 05:32
编程语言
c++
开发语言
C++11
知识点汇总
课程总目录文章目录一、
C++11
常用关键知识点梳理1.1关键字和语法1.2绑定器和函数对象1.3
智能指针
1.4容器二、C++语言级别支持的多线程编程2.1通过thread类编写C++多线程程序2.2线程间互斥
GeniusAng丶
·
2024-09-14 02:13
C/C++编程
c++
多线程
生产者消费者
线程间互斥
线程间同步
互斥锁
CAS
C++11
多线程消费者生产者问题
写这篇博客的目的是因为笔者在学习
c++11
多线程的时候,查阅了许多博客和文章,发现他们都写的乱七八糟的,加上笔者想要通过类来封装消费者生产者问题,但是网上其他博客大多都没有封装成一个类,所以笔者才写下这篇博客
GuoZzzCHEN
·
2024-09-14 01:05
c++
开发语言
多线程
并发编程
C++线程、多线程教程详解(全网最全、示例最多、最详细)(第一篇)
目录A、线程/多线程基础一、
C++11
创建线程的几种方式1.1使用函数指针1.2使用lambda表达式1.3使用成员函数1.4使用可调用对象(Functor)二、定义一个线程类三、join()与detach
shuai_258
·
2024-09-14 00:30
c++
c++全套攻略
c++多线程
c++
C++学习笔记----6、内存管理(五)----
智能指针
(4)
3、weak_ptr在C++中还有一个与shared_ptr相关的
智能指针
叫做weak_ptr。weak_ptr可以包含一个被shared_ptr管理的资源的引用。
王俊山IT
·
2024-09-13 17:51
c++
学习
笔记
开发语言
C++学习笔记(16)
十七、新的STL方法(成员函数)1)
C++11
新增了的方法cbegin()、cend()、crbegin()、crend(),这些方法将元素视为const。
月夕花晨374
·
2024-09-11 11:19
c++
学习
笔记
C++学习笔记(15)
二、
C++11
静态断言assert宏是运行时断言,在程序运行的时候才能起作用。
C++11
新增了静态断言static_assert,用于在编译时检查源代码。使用静态断言不需要包含头文件。
月夕花晨374
·
2024-09-11 10:13
c++
学习
笔记
OpenCV结构分析与形状描述符(14)拟合直线函数fitLine()的使用
操作系统:ubuntu22.04OpenCV版本:OpenCV4.9IDE:VisualStudioCode编程语言:
C++11
算法描述拟合一条直线到2D或3D点集。
jndingxin
·
2024-09-11 10:10
OpenCV
opencv
人工智能
计算机视觉
智能指针
的原理、使用和实现
1,
智能指针
的作用C++程序设计中使用堆内存是非常频繁的操作,堆内存的申请和释放都由程序员自己管理。
哎呦,帅小伙哦
·
2024-09-11 07:53
C++
常见面试题
(学习总结15)
C++11
小语法与拷贝问题
C++11
小语法与拷贝问题auto关键字范围forinitializer_list深拷贝与浅拷贝写时拷贝以下代码环境为VS2022C++。
瞌睡不来
·
2024-09-11 03:24
学习
c++
c++STL
C++——
智能指针
前言:哈喽小伙伴们,今天我们继续来分享C++的一个全新知识——
智能指针
。
很楠不爱
·
2024-09-10 12:40
c++
开发语言
C++学习笔记(12)
194、
智能指针
shared_ptrshared_ptr共享它指向的对象,多个shared_ptr可以指向(关联)相同的对象,在内部采用计数机制来实现。
月夕花晨374
·
2024-09-09 23:31
c++
学习
笔记
C++11
多线程、进程详解(1)
C++11
中的thread库#include#includeusingn
大大大冯小小
·
2024-09-09 17:16
c++
开发语言
[记]
C++11
新特性(1)
宏定义\__VA_ARGS___VA_ARGS_变长参数的宏定义是指宏定义中参数列表的最后一个参数为...,而实现部分可以用_VA_ARGS_替换1#include2#include34#include5#include67usingnamespacestd;89#defineLOG(...){\10printf("%s:%d\t",__FILE__,__LINE__);\11printf(__V
Levin文学
·
2024-09-08 03:51
day48——杂项
一、Lambda表达式(
C++11
)1.1基本概念lambda表达式相当于在函数中定义一个轻量版函数,可以直接使用,也可以赋值给其他函数指针变量使用1.2定义格式1>格式:[捕获列表](函数形参列表)[
初夏怡情
·
2024-09-07 16:10
java
开发语言
UE5 C++ 读取图片插件(一)
staticTSharedPtrGetImageWrapperByExtention(constFStringInImagePath);//
智能指针
,方便追寻引用C++,加载ImageWrapperstaticUTexture2D
曼巴UE5
·
2024-09-07 05:56
ue5
java
前端
实验楼 python实现markdown解析器_C++ 打造 Markdown 解析器
Markdown解析器,作为展示,还将为文档生成目录本项目由欧龙崎发布在实验楼,完整教程及在线练习地址:C++打造Markdown解析器一、概述效果展示如图所示:项目涉及的知识点词法分析技术语法树DFS深度优先搜索
C+
weixin_39517400
·
2024-09-07 03:12
实验楼
上一页
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
其他