![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++11
文章平均质量分 94
coding-hwz
生前何必久睡
展开
-
C++标准 — C++11特性补充
C++标准 — C++11特性补充一、属性标识符二、编码转化三、typeindex四、hash五、system_error一、属性标识符C++11中,引入了属性标识符的概念,用于修饰类型,对象,代码等。其表示方法为:[[ attribute-list ]]属性列表由 , 分割的属性组合而成。属性有四种表示方法:简单属性,如 [[noreturn]]。名称空间中的属性,如 [[gnu::unused]]。带参的属性,如 [[deprecated(“because”)]]。名称空间中的带参属原创 2022-01-17 18:24:56 · 843 阅读 · 0 评论 -
《C++ Primer》学习笔记 — 拷贝控制
《C++ Primer》学习笔记 — 知识补充一、拷贝控制1、三五法则二级目录三级目录一、拷贝控制1、三五法则(1)需要析构函数的类也需要拷贝和赋值操作 — 例如对象需要在析构函数中释放动态内存,则需要在拷贝构造函数中考虑为新对象分配新内存,而不能进行位拷贝。(2)需要开背操作的类也需要赋值操作,反之亦然二级目录三级目录...原创 2021-07-12 10:23:50 · 166 阅读 · 0 评论 -
《C++ Primer Plus》学习笔记 — 智能指针模板和optional类
《C++ Primer Plus》学习笔记 — 标准模板库一、智能指针模板类1、auto_ptr和unique_ptr2、shared_ptr和weak_ptr一、智能指针模板类1、auto_ptr和unique_ptr前面我们了解过,unique_ptr要优于auto_ptr。而且auto_ptr已经为C++标准所弃用。那么这里unique_ptr的优越性主要体现在:禁止左值引用的对象所有权隐式转移,仅能使用std::move函数转移所有权,允许右值引用的对象所有权转移。#include <原创 2021-05-19 12:13:23 · 558 阅读 · 0 评论 -
《C++标准库》学习笔记 — 通用工具 — Clock 和 Timer
《C++标准库》学习笔记一、Chrono 程序库概观二、duration1、duration的算术运算2、Duration 的其他操作3、duration_cast4、rep 和 period三、clock 和 timepoint1、Clock一、Chrono 程序库概观Chrono 程序库的设计,是希望能够处理timer 和 clock在不同系统中可能不同的事实,同时也是为了强化时间精度。为避免像 POSIX 的 tine 程序库那样每十年就引入一个新的时间类型,C++标准库的目标是提供一个精度中立概原创 2021-09-23 11:07:38 · 1194 阅读 · 1 评论 -
《C++ Primer》学习笔记 — 标准库特殊设施
《C++ Primer》学习笔记 — 标准库特殊设施一级目录二级目录三级目录一级目录二级目录三级目录原创 2021-07-22 10:33:34 · 298 阅读 · 1 评论 -
《C++ Primer Plus》学习笔记 — C++11
《C++ Primer Plus》学习笔记 — C++11一、扩展前面学过的C++111、初始化列表2、类内成员初始化3、foreach4、右值引用二、移动语义和右值引用1、移动语义2、移动构造函数使用及注意事项3、强制移动一、扩展前面学过的C++111、初始化列表C++11中支持使用初始化列表初始化各种变量。除此之外,该标准中也支持使用模板类std::initializer_list作为构造函数参数。这种做法只支持同类型元素或者可转换为同类型元素的初始化:#include <iostream原创 2021-06-04 20:44:16 · 304 阅读 · 0 评论 -
《C++标准库》学习笔记 — STL — 并发 — 启动线程
《C++标准库》学习笔记 — STL — 并发一、高级接口 async() 和 Future1、实例一、高级接口 async() 和 Futureasync() 提供一个接口,让一个 (caller object) 成为一个独立线程。class future 允许你等待线程结束并获取其结果。1、实例考虑下面的操作:func1() + func2()在单线程中,整体处理时间是 func1() 所花时间加上 func2() 所花时间,再加上计算总和所花时间。如果我们尝试在多线程中实现这样的操作原创 2021-12-03 22:27:26 · 1148 阅读 · 0 评论 -
《C++标准库》学习笔记 — STL — 并发 — 线程同步与并发 — mutex 与 lock
《C++标准库》学习笔记 — STL — 并发 — 线程同步与并发一、线程同步与并发并发问题1、出错情况(1)未同步化的数据访问(2)写至半途的数据(3)重新安排的语句2、解决问题需要的特征3、C++并发的支持一、线程同步与并发并发问题1、出错情况(1)未同步化的数据访问并行运行的两个线程分别读和写同一个数据。std:;vector<int> vec;if (!vec.empty()){ std::cout << v.front() << std::end原创 2021-12-08 21:16:27 · 1088 阅读 · 0 评论 -
《C++标准库》学习笔记 — STL — 并发 — 线程同步与并发 — 条件变量与原子操作
《C++标准库》学习笔记 — STL — 并发 — 线程同步与并发 — mutex 与 lock一、条件变量1、意图2、条件变量的基本使用3、使用条件变量实现消费队列4、细究条件变量二、Atmoic1、使用 Atmoic2、与其他变量共同使用一、条件变量1、意图我们前面介绍的 future 主要用于传递线程的返回值和异常。但是,有时我们需要确保不同线程之间的工作流。我们可以使用一个简单的变量和锁来控制,其带来的结果就是我们需要在线程中轮询该变量的值:bool ready = false;mutex原创 2021-12-11 15:04:12 · 561 阅读 · 0 评论