随笔分类 - C++
摘要:# unique_ptr 的使用 `std::unique_ptr`是c++11起引入的智能指针,为什么必须要在c++11起才有该特性,主要还是c++11增加了move语义,否则无法对对象的所有权进行传递。 ## unique_ptr 介绍 - unique_ptr 不共享它的指针。它无法复制到其他
阅读全文
摘要:# weak_ptr 的使用 $\quad$关于为什么使用 `weak_ptr`,以及他的使用场景,我们在[这篇文章](https://www.cnblogs.com/weihao-ysgs/p/shared_ptr-weak_ptr.html)中已经进行了介绍。而对于其具体的使用方法,比如说如何通
阅读全文
摘要:# 多线程中互斥信号量(Mutex)的使用 ## 1.0 互斥量的基本概念 ### 1.1 Example $\quad$首先我们要明白,为什么会有互斥信号量的出现,在多线程编程中,不同的线程之间往往要对同一个数据进行操作,如果该数据是只读的,当然不会出现什么问题,但是如果两个线程同时对某个数据进行
阅读全文
摘要:std中的nth_element 默认求的是数组中第 n 小的元素 可以通过参数传入,求第 n 大的元素 示例代码 #include <algorithm> #include <iostream> #include <vector> using namespace std; int main(int
阅读全文
摘要:shared_ptr 和 weak_ptr shared_ptr 相关特性 引用计数,使用得当一般不会出现内存问题 一般和 make_shared 结合使用,因为 shared_ptr 本身会有两个变量,一个是存储原先对象,一个是存储引用计数,一般这两个内存地区会离得比较远,make_shared
阅读全文
摘要:Eigen 中的 conservativeResize 和 resize 操作 对于能够改变大小的动态矩阵,一般会有 resize() 操作。 resize() 如果不改变原矩阵的大小,则原矩阵大小和元素值都不会有改变,但是如果改变了原来矩阵的大小,则会调用矩阵的析构函数,导致矩阵的元素全部为0。
阅读全文

浙公网安备 33010602011771号