- 博客(12)
- 收藏
- 关注
原创 记录一个宏的使用技巧,使用宏生成一定规则的字符串
记录一个宏的使用技巧背景宏的使用背景最近在项目中遇到一个问题,项目中一个字段对外的协议是毫无规律的整形值,内部需要将这个协议映射成方便处理的数据结构,想到的办法是把协议值先枚举出来,然后解析枚举变量。由于枚举变量本身不能直接解析,所以该为解析枚举变量的名字。比如enum{ ONLY_TYPE1 = 1, ONLY_TYPE2 = 2, ONLY_TYPE3 = 3, ONLY_TYPE4 = 4, TYPE1_AND_TYPE2 = 5, TYPE1_AND_TYPE2_AND_TYPE
2022-02-26 22:07:21
453
原创 SGI STL源码剖析——stack、queue、priority_queue
三个配接器配接器stack、queuepriority_queue配接器stack、queue、priority_queue这三个结构并不是真正意义上的STL容器,他们使用现有的容器作为底层结构,然后对外封装接口,从而表现出不同的特性,此即配接器。stack、queuestack和默认使用deque作为底层容器,stack实现了栈顶访问top(),进栈和出栈的push()、pop(),deque支持队列头部front()和队尾back(),支持进队出队push()、pop()stack和deque
2022-02-14 22:57:03
469
原创 SGI STL源码剖析——deque
SGI STL源码剖析——dequedequedeque相对vector和list,平时使用的比较少,但是以deque为基础配接得到的队列queue和栈stack则是经常使用,deque的实现比起vector和list要稍显复杂些。deque使用了分段连续的结构,而为了维护分段连续,其迭代器经过了精心设计。相比vector,deque支持高效率的头部插入,并且deque没有容量的概念,不像vector一旦容量不足就需要重新配置空间。deque欲学习容器,必先学习其迭代器,deque的迭代器经过精心设计
2022-02-11 22:27:23
544
原创 SGI STL源码剖析——list容器
SGI STL源码剖析——list容器list定义构造和初始化三级目录list定义链表结构list也是常用的容器,比起vector的连续线性空间,list是链表结构,既然是链表结构,必然存在经典的链表节点数据结构,// 链表结构基类,双向链表struct _List_node_base { _List_node_base* _M_next; _List_node_base* _M_prev;};// 真正使用的链表节点template <class _Tp>struct
2022-02-05 21:01:17
630
原创 SGI STL源码剖析——序列式容器(vector)
序列式容器vectorvector定义vector迭代器和数据结构vector构造和内存管理vector元素操作vector定义vector几乎是我们使用最多的容器了,比起原生数组的静态空间,vector使用更加灵活。我们首先来看vector的定义,然后了解其对内存的操作,结合前面学习的空间配置器和迭代器。在看vector模板的定义之前,先看其基类定义,// vector 继承 _Vector_basetemplate <class _Tp, class _Alloc> class
2022-02-01 16:59:00
341
原创 SGL STL源码剖析——迭代器
SGL STL源码剖析——迭代器迭代器迭代器的型别Traits的作用迭代器相应的五种型别插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入迭代器在我们使用STL容器的时候,迭代器是非常常见的,STL将容器和算法分开,彼此独立,然后通过迭代器相互关联。迭代器不是脱离容器存在的,每一种STL容
2022-01-29 21:52:51
874
原创 SGI STL源码剖析——空间配置器
SGI STL源码剖析——空间配置器前言空间配置器SGI空间配置器内存配置和对象构造如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入前言这段时间读了侯捷老师的STL源码剖析,有一些体会和收获,看书的过程也碰到了许多疑惑,因此将自己的理解记录下来,原书和源码https:
2022-01-23 22:45:31
1188
原创 Centos7下新版本Jsoncpp编译安装
Centos7下新版本Jsoncpp编译安装上一篇文章中,搭建好了虚拟机centos服务器,并且通过ssh连接,这里我们编译使用一下Jsoncpp这个广泛使用的json开源库。编译Jsoncpp直接下载源码编译,网址https://github.com/open-source-parsers/jsoncpp/新建一个项目文件夹jsoncpp,然后git clone https://github.com/open-source-parsers/jsoncpp/如果下载超时,试试git clone g
2021-11-27 19:53:30
1129
原创 VMware虚拟机搭建Linux服务器,网络盘映射并用ssh连接
@VMware虚拟机搭建Linux服务器前言这段时间在公司使用了编译服务器,windows下写代码和看代码,然后Linux下编译,感觉还是挺好用的。因此一直想自己整个Linux服务器,直接买的话还是有点贵的,因此考虑用虚拟机折腾一下。能搜到一些教程,这里结合我遇到的问题做个整合。1、安装Centos虚拟机这里使用的是VMware,具体安装方案网上很多,直接百度即可,不在此处赘述了。Centos镜像下载,可以直接使用阿里的镜像网站Centos.我使用的是7.8的版本,关于DVD、Minima...
2021-11-21 16:31:14
1513
原创 mmap内存映射写入txt文件
mmap内存映射写入txt文件内存映射写入应该是一个比较简单的操作,网上也有线程的例子,不过我自己在使用时碰到了一点小问题,所以总结了下,有相似情况的小伙伴们可以参考下哈。另外贴一篇别人的博客,写得很详细,刚接触的可以看下链接: 传送门.基本的做法,网上有例子,如下#include <sys/mman.h>#include <sys/stat.h>#include <fcntl.h>#include <stdio.h>#include <s
2020-05-13 18:29:38
3141
原创 目标跟踪相关滤波中的数学推导,从闭式解到ADMM优化
接触相关滤波系列的跟踪算法有1年多了,总结一下一些论文中的数学推导,同时总结一下这当中自己的问题,有感兴趣的小伙伴们可以一起探讨下。可能写的比较杂乱,部分地方加入了自己的见解会说明,觉得有问题的也可以一起学习。废话不多说,开始正文(断断续续的写,定时更新)。1、一切的起点DCF关于相关滤波,不谈MOSSE和CSK,比较经典的文章是KCF,这篇文章给出了不使用核函数的岭回归推导,在后面的文章如S...
2020-03-02 15:25:20
498
原创 matconvnet的Matlab2019a + VS2017 + CUDA10配置(目标跟踪ECO-GPU配置)
Matlab2019Ra + VS2017 + CUDA10的matconvnet配置与ECO-gpu配置相关滤波一些算法的matlab版本代码都用到了matconvnet,当然CPU也能跑,不过速度慢,gpu能快点儿,想要水论文实验,还是得配置好。matconvnet的cpu版本还好,gpu各种报错,关键这些错误按照网上的教程还不一定能行。这里记录一下我的配置过程和碰到的问题,给大家做个参考。...
2020-02-02 00:01:56
3937
10
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人