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++之类和对象(下)
目录初始化列表static成员
C++11
对于非静态成员变量初始化友元友元函数友元类总结初始化列表我们知道,在学习构造函数时,我们知道对象的成员变量的初始化我们是在构造函数函数体内进行初始化的,还有没有其它初始化成员变量的方法呢
只做开心事
·
2023-12-06 11:21
c++
开发语言
library not found for -libstdc++.6.0.9
Xcode升级到Xcode10.0后,由于去掉陈旧的libstdc++库替换为libc++,libc++相对是苹果最新版的C++库,经过优化并全面支持
C++11
。
Peter杰
·
2023-12-06 11:49
【
C++11
】可变参数模版/lambda表达式/包装器
lambda表达式的语法规则2.3:lambda表达式的捕捉列表2.4:lambda表达式的底层原理三:包装器3.1:function包装器3.2:bind(绑定)一:可变参数模版1.1:什么是可变参数模板在
C+
KL4180
·
2023-12-06 06:35
c++
第18章
C++11
标准库(STL)
STL定义了强大的、基于模板的、可复用的组件,实现了许多通用的数据结构及处理这些数据结构的算法。其中包含三个关键组件——容器(container,流行的模板数据结构)、迭代器(iterator)和算法(algorithm)。组件描述容器容器是用来管理某一类对象的集合。C++提供了各种不同类型的容器,比如deque、list、vector、map等。迭代器迭代器用于遍历对象集合的元素。这些集合可能是
马·坚
·
2023-12-06 04:22
编程
c++
linux 内核同步互斥技术之信号量
和
自旋锁
相比,信号量适合保护比较长的临界区,因为竞争信号量时进程可能睡眠和再次唤醒,代价很高。
一叶知秋yyds
·
2023-12-06 01:55
linux
linux
运维
服务器
c语言
网络
面试多线程八股文十问十答第三期
⭐1.介绍一下
自旋锁
重量级锁竞争时,尝试获取锁的线程不会立即阻塞,可以使用自旋(默认10次)来进行优化,采用循环的方式去尝试获取锁注意:自旋占用CPU时间,单核CPU自旋就是浪费时间,因为同一时刻只能运行一个线程
程序员小白条
·
2023-12-05 21:02
面试八股文系列
面试
职场和发展
java
八股文
多线程
并发编程
JVM
CLH锁原理
CLH锁其实是为了优化
自旋锁
的缺点:所有
自旋锁
都在一个内存地址上自旋,持有锁的线程释放锁后,会引发惊群效应,而且会造成个别线程一只拿不到锁,处在饥饿状态,CLH锁通过队列将所有线程排队,避免惊群效应,也保证所有线程都能执行
翁正存
·
2023-12-05 17:31
java
开发语言
C++11
线程池实现
话不多说,先放代码https://github.com/xyygudu/ThreadPool多线程程序一定好吗?不一定,要看当前程序的类型来判断,程序的类型有IO密集型和CPU密集型。IO密集型:涉及一些IO操作的指令,比如设备、文件、网络等,这些IO操作很容易阻塞程序,也是比较耗时的操作。CPU密集型:指令主要是用于计算的。对于多核计算机来说,这两种类型的程序使用多线程都是有必要的,但是如果是单
xyygudu
·
2023-12-05 17:56
c语言
c++
【
C++11
(一)】右值引用以及列表初始化
initializer_list容器讲解4.左值与右值引用的初步认识5.左值引用与右值引用比较6.右值引用的使用场景以及价值7.模板中的万能引用:&&8.总结以及拓展1.前言在C++98过后,更新的最重大,最有意义的就是
C+
杭电码农-NEO
·
2023-12-05 14:12
C++从入门到精通
c++
开发语言
C++11
C++多线程编程(第四章 案例1:base16编码,
C++11
和C++17 多核并行计算样例)
目录4.1手动实现多核base16编码4.1.1实现base16编码4.1.1.1编码16进制4.1.1.2反解码16进制4.1.2无多线程代码4.1.3C++11多线程代码4.1.4C++17多线程并发4.1.5所有测试代码汇总4.1手动实现多核base16编码4.1.1实现base16编码二进制转换为字符串一个字节8位,拆分为两个4位字节(最大值16)拆分后的字节映射到0123456789ab
鸿儒517
·
2023-12-05 13:34
多线程
C++
笔记心得
c++
开发语言
多线程
map和set的使用
multimap小结map的使用统计最喜欢吃的前几种水果前K个高频单词,返回单词的频率由高到低,频率相同时,字典序排列关联式容器序列式容器:vector、list、deque、forward_list(
C+
@YuanWei
·
2023-12-05 12:05
数据结构
算法
c++
12、
C++11
for循环使用注意事项
当使用for循环遍历某个序列时,无论该序列是普通数组、容器还是用{}大括号包裹的初始化列表,遍历序列的变量都表示的是当前序列中的各个元素。并不是迭代器。基于范围的for循环可以遍历普通数组、string字符串、容器以及初始化列表。除此之外,for循环冒号后还可以放置返回string字符串以及容器对象的函数。但是不能遍历用指针表示的数组。当基于范围的for循环遍历的是某函数返回的string对象或者
Aced96
·
2023-12-05 12:57
C++11
c++
【C++】map和set的使用及注意事项
4.multiset5.map6.multimap349.两个数组的交集1.关联式容器在初阶阶段,我们已经接触过STL中的部分容器,比如:vector、list、deque、forward_list(
C+
LuckyRich1
·
2023-12-05 12:55
C++从入门到精通
c++
rpc
开发语言
c++面试宝典
目录一多线程二指针三字符串四面向对象五基本用法六
c++11
七算法c++面试必考多线程,内存(智能指针),常见算法,设计模式。
步基
·
2023-12-05 12:17
c++
c++
波奇
C++11
:智能指针(三)特殊类的设计和单例模式
智能指针除了创建普通对象还有以下用法std::shared_ptrsp1(newTest[2]);//数组std::shared_ptrsp2((Test*)malloc(sizeof(Test)));//malloc开辟空间std::shared_ptrsp3(fopen("源.cpp","r"));//文件管理此时原本的析构的函数可能无法发挥作用。~SharedPtr(){if(--(*_pc
社交达人波奇酱
·
2023-12-05 07:05
波奇学c
c++
单例模式
java中锁的分类总结
锁分类Java中的锁有很多,可以按照不同的功能、种类进行分类,下面是我对Java中一些常用锁的分类,包括一些基本的概述从线程是否需要对资源加锁可以分为悲观锁和乐观锁从资源已被锁定,线程是否阻塞可以分为
自旋锁
从多个线程并发访问资源
屎山搬运工
·
2023-12-05 03:22
Java
java
数据库
后端
面试
C++-详解
C++11
中的左值,左值引用,右值,右值引用
目录一.C语言中对左值和右值的定义1.左值2.右值二.左值引用和右值引用1.左值引用2.右值引用3.左值引用给右值取别名4.右值引用给左值取别名三.移动构造和移动赋值1.移动赋值2.移动拷贝编辑编辑四.完美转发1.先看一道试题:一.C语言中对左值和右值的定义C语言-数据对象,左值,右值-CSDN博客1.左值定义:左值是一个表示数据的表达式(比如变量名或解引用的指针)。我们可以获取它的地址,一般可以
Small black human
·
2023-12-05 02:43
c++
开发语言
C++进阶篇6---C++11新语法
目录目录一、统一的列表初始化二、声明1.auto2.decltype3.nullptr三、范围for四、STL中的变化五、右值引用和移动语义(重点)一、统一的列表初始化在
c++11
之前,我们能用{}初始化数组和结构体
竹下为生
·
2023-12-05 01:01
c++
算法
数据结构
第十五届蓝桥杯模拟赛第二期C++
疯狂吐槽dev得不好用,ICPC已经上Clion了,Dev自动补充很不好,而且只支持
C++11
???**了个狒狒的啊啊啊啊难受!!!
薯条本薯
·
2023-12-04 17:24
蓝桥杯
c++
vscode
「C++」
C++11
新特性
文章目录前言右值引用概念右值引用的意义移动构造和移动赋值完美转发lambada表达式包装器function包装器bind包装器总结前言C++标准10年磨一剑,于2011年迎来了它真正意义上的第二个标准,
C+
CaTianRi
·
2023-12-04 17:40
C++
c++
java
算法
【
C++11
/线程相关】thread类编写多线程、mutex互斥锁和lock_guard、atomic原子类型
目录通过thread类编写C++多线程程序线程间互斥——mutex互斥锁和lock_guardmutex互斥锁lock_guard线程间通信
C++11
实现生产者与消费者模型基于CAS操作的atomic原子类型橙色通过
努力学习的小马
·
2023-12-04 14:48
我的c++学习之路
c++
java
开发语言
波奇学C++:
C++11
的新特性
intz{3};return0;}{}按声明顺序初始化类成员变量Ap{1,2};coutv1={1,2,3,4,5};decltype():推导类型decltype(x)y;//y的类型和x的类型一样
C+
社交达人波奇酱
·
2023-12-04 14:37
波奇学c
c++
算法
数据结构
波奇学C++:智能指针(二):auto_ptr, unique_ptr, shared_ptr,weak_ptr
C++98到
C++11
:智能指针分为auto_ptr,unique_ptr,shared_ptr,weak_ptr,这几种智能都是为了解决指针拷贝构造和赋值的问题auto_ptr:允许拷贝,但只保留一个指向空间的指针
社交达人波奇酱
·
2023-12-04 14:37
波奇学c
c++
开发语言
波奇学C++:
C++11
的可变参数模板和emplace
可变参数模板//args是参数包templatevoid_ShowList(Tvalue,Args...args){coutvoid_ShowList(Tval){coutvoid_ShowList(Tvalue,Args...args){coutintPrintArg(Tt){coutvoidCppPrint(Args...args){inta[]={PrintArg(args)...};}in
社交达人波奇酱
·
2023-12-04 14:03
波奇学c
c++
java
前端
enable_shared_from_this使用介绍
enable_shared_from_this定义使用场合源码实现注意enable_shared_from_this定义定义于头文件templateclassenable_shared_from_this;(
C+
Erice_s
·
2023-12-04 13:52
C/C++
c++
算法
开发语言
C++ 左右值、左右引用、万能引用、引用折叠、完美转发详解
前言本文介绍
C++11
引入的完美转发实现,其本质通过万能引用+引用折叠+std::static_cast进行实现。
kaiserqzyue
·
2023-12-04 13:12
c++
C++标准模板(STL)- 类型支持 (杂项变换,实施当按值传递实参给函数时所进行的类型变换,std::decay)
杂项变换实施当按值传递实参给函数时所进行的类型变换std::decaytemplatestructdecay;(
C++11
起)对类型
繁星璀璨G
·
2023-12-04 13:38
C++标准库模板(STL)-
类型支持
c++
标准库模板
运行时类型识别
杂项变换
decay
C++17新特性
程序喵之前已经介绍过
C++11
的新特性和C++14的新特性,链接如下:xxx,今天向亲爱的读者们介绍下C++17的新特性,现在基本上各个编译器对C++17都已经提供完备的支持,建议大家编程中尝试使用下C
this_is_for_u
·
2023-12-04 11:18
C++11
多线程join()和detach()的理解
简介每一个程序至少拥有一个线程,那就是执行main()函数的主线程,而多线程则是出现两个或两个以上的线程并行运行,即主线程和子线程在同一时间段同时运行。而在这个过程中会出现几种情况:主线程先运行结束子线程先运行结束主子线程同时结束在一些情况下需要在子线程结束后主线程才能结束,而一些情况则不需要等待,但需注意一点,并不是主线程结束了其他子线程就立即停止,其他子线程会进入后台运行join()join(
不忘初心t
·
2023-12-04 06:16
c++多线程那件事
jvm
开发语言
c++
E1696 无法打开 源 文件 “chrono“
针对vs2010添加头文件#include时,编译时出现错误:E1696无法打开源文件“chrono”这是以为chrono是
c++11
新增的内容,而vs2010不支持
c++11
的内容所以,对于vs2010
开心大爆炸
·
2023-12-04 03:49
C/C++
c++
C++内联函数
目录一,概念二,特性三,与内联有关的面试题四,auto关键字(
C++11
)auto的使用细则auto不能推导的场景基于范围的for循环(
C++11
)范围for的使用条件五,指针空值nullptr(
C++
不会背雨霖铃
·
2023-12-04 01:16
C++
c++
详解
C++11
新特性---右值引用和移动语义
.左值引用的使用场景2.左值引用的短板:3.右值引用和移动语义解决上述问题移动构造:移动赋值:三、右值引用引用左值及其一些更深入的使用场景分析一、左值引用和右值引用传统的C++语法中就有引用的语法,而
C+
叶子Coding
·
2023-12-04 00:16
C++难点解析
c++
开发语言
C++:
C++11
新特性--lambda表达式和包装器
文章目录lambda表达式lambda表达式的使用规则lambda表达式的用法lambda表达式的理解函数对象和lambda表达式包装器bindlambda表达式首先介绍什么是lambda表达式,在介绍这个情景前,可以回忆一下算法库中的sort排序://lambda表达式voidlambda1(){intarr[]={1,3,6,5,4,2,8,9,10};for(autoe:arr)coutb;
海绵宝宝de派小星
·
2023-12-03 19:37
C++
知识总结
c++
开发语言
PCL:CMakeLists.txt配置文件
image.pngcmake_minimum_required(VERSION2.8)project(pcl_test)#设置编译模式set(CMAKE_BUILD_TYPE"Debug")set(CMAKE_CXX_FLAGS"-std=
c+
AI秘籍
·
2023-12-03 19:25
C++11
左值 右值
什么是左值?什么是左值引用?左值是一个表示数据的表达式(如变量名或解引用的指针),我们可以获取它的地址+可以对它赋值,左值可以出现赋值符号的左边,右值不能出现在赋值符号左边。定义时const修饰符后的左值,不能给他赋值,但是可以取它的地址。左值引用就是给左值的引用,给左值取别名。i和j都可以被取地址,因此都是左值:i和j都是左值引用:什么是右值?什么是右值引用?右值也是一个表示数据的表达式,如:字
孙鹏宇.
·
2023-12-03 17:06
c++
C++11
类的新功能
新的默认成员函数
C++11
在6个默认成员函数基础上又加了两个:移动构造函数和移动赋值函数针对移动构造函数和移动赋值运算符重载有一些需要注意的点如下:小结:(1)生成默认移动构造的条件比较严苛:必须是没有实现析构函数
孙鹏宇.
·
2023-12-03 17:36
c++
开发语言
C++11
【上】
欢迎来到Cefler的博客博客主页:那个传说中的man的主页个人专栏:题目解析推荐文章:题目大解析(3)目录统一的列表初始化声明autodecltypenullptr范围for循环智能指针左右值引用和移动语义左值引用和右值引用认识左值引用与右值引用比较move函数右值引用的移动语义完美转发统一的列表初始化在C++98中,标准允许使用花括号{}对数组或者结构体元素进行统一的列表初始值设定。比如:st
cefler
·
2023-12-03 14:00
C++
c++
C++11
【下】
欢迎来到Cefler的博客博客主页:那个传说中的man的主页个人专栏:题目解析推荐文章:题目大解析(3)目录新的类功能类成员变量初始化强制生成默认函数的关键字default禁止生成默认函数的关键字delete继承和多态中的final与override关键字可变参数模板empalce相关接口函数Lambda表达式注意要点函数对象与lambda表达式包装器function包装器function包装器与
cefler
·
2023-12-03 14:00
C++
c++
c++11
C++11
线程基础——线程的创建
线程创建方式首先包含头文件#include传入函数使用类对象,可调用对象传入lambda表达开发测试环境windows1064bitVisualStudio2017内容
C++11
线程的创建方式thread
侠之大者_7d3f
·
2023-12-03 12:55
1-算法基础-编程基础
1.基本数据类型charch='A';chars[]="hello";2.const定义常量constintN=1e5+9;//const定义常量,后续不可被修改inta[N];3.万能头文件
C++11
卡__卡
·
2023-12-03 10:50
C/C++算法竞赛
算法
c++
数据结构
c语言
c++11
:nlohmann::json进阶使用(三)使用basic_json模板类
nlohmann::json是非常好用的一个json开源解析库.nlohmann/json的源码是基于
C++11
标准写的,整个源码就是一个文件nlohmann/json.hpp,引用非常方便。
10km
·
2023-12-03 09:55
c/c++/c++11
json
nlohmann
json
basic_json
template
ordered_json
Windows下CodeBlocks配置 支持
C++11
多线程 std::thread
失败的几种姿势之前看了几篇文章http://blog.csdn.net/guogaoan/article/details/17653295这篇博客是让在SourceForge上下载32位或64位的MinGW-buildsv4.8.0:下载链接分别是:(1)http://sourceforge.net/projects/mingwbuilds/files/host-windows/releases/
我想有个长长的名字
·
2023-12-03 02:59
环境配置
c++11
std-threa
codeblocks
C++多线程:std::thread
C++11
新标准中引入了五个头文件来支持多线程编程,他们分别是,,,和。
胖小迪
·
2023-12-03 02:28
CPP
c++
开发语言
后端
C++11
智能指针的基本原理及使用
介绍智能指针是一个类,用来存储指向动态分配对象的指针,负责自动释放动态分配的对象,防止堆内存泄漏。动态分配的资源,交给一个类对象去管理,当类对象声明周期结束时,自动调用析构函数释放资源。分类auto_ptr**已弃用,使用unique_ptr!**auto_ptr有复制语义,拷贝后源对象变得无效,这可能引发很严重的问题;而unique_ptr则无拷贝语义,但提供了移动语义,这样的错误不再可能发生,
Zhou_Xintong
·
2023-12-03 00:06
实际开发
c++
开发语言
C++11
中Lambda新特性
1.定义lambda匿名函数的语法格式:[外部变量访问方式说明符](参数)mutablenoexcept/throw()->返回值类型{函数体;};其中各部分的含义分别为:a.[外部变量方位方式说明符][]方括号用于向编译器表明当前是一个lambda表达式,其不能被省略。在方括号内部,可以注明当前lambda函数的函数体中可以使用哪些“外部变量”。所谓外部变量,指的是和当前lambda表达式位于同
踏过山河,踏过海
·
2023-12-02 23:45
c/c++知识二次稳固
c++
C++中的智能指针有哪些?分别解决的问题以及区别?
1.C++中的智能指针有4种,分别为:shared_ptr、unique_ptr、weak_ptr、auto_ptr,其中auto_ptr被
C++11
弃用。
踏过山河,踏过海
·
2023-12-02 23:45
c/c++知识二次稳固
c++
什么是POD类型
C++11
及更高版本引入了更灵活的术语,称为**Trivial和StandardLayout**,这些术语更精确地
Liuuuu408
·
2023-12-02 20:13
c++
c++11新特性
c++
(C++20) consteval立即函数
文章目录由来consteval立即函数上下文的常量性质lambda表达式编译期间确定无法获取函数指针查看汇编END由来在
C++11
中推出了constexpr使得对象或者函数能够具有常量性质并能在编译器确定
天赐细莲
·
2023-12-02 11:33
c++20
算法
c++
C/
C++11
语法/概念易错总结(1)
文章目录缺省参数函数重载引用引用和指针内联宏的优缺点auto范围forNULL和nullptr缺省参数半缺省参数必须从右往左依次来给出,不能间隔着给voidFunc(inta,intb=10,intc=20){cout汇编代码这个过程将函数名直接转为汇编代码;而C++专用的编译器中在:C/C++语言——>汇编代码这个过程将函数名经过修饰转为汇编代码,Linuxg++编译器修饰的方法为(不同的平台、
梦 梦见木
·
2023-12-02 08:44
c语言
c++
个人学习
【1】基于多设计模式下的同步&异步日志系统
件以及滚动⽂件中•⽀持多线程程序并发写⽇志•⽀持扩展不同的⽇志落地⽬标地2.开发环境•CentOS7•vscode/vim•g++/gdb•Makefile3.核⼼技术•类层次设计(继承和多态的应⽤)•
C+
小鳄鱼爱吃薯片
·
2023-12-02 08:12
日志系统
设计模式
c++
上一页
14
15
16
17
18
19
20
21
下一页
按字母分类:
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
其他