- 博客(9)
- 收藏
- 关注
原创 手把手教你学会gdb,适应Linux调试环境
在前文 基于vscode 打造Linux C++编码环境 一期中,讲解了如何基于vscode搭建Linux c++的编码环境,但是还没有讲解如何基于vscode搭建调试环境。本期,主要有两个任务:讲解常用的gcc编译选项讲解常用的gdb编译指令本文更好的阅读体验,可以点击: 手把手教你学会gdb,适应Linux调试环境更多硬核知识,vx搜一搜: look_code_art,更多硬核等你发现,也可以添加个人 vx: fibonaccii_常用gcc编译选项在 深入了解C++系列中
2021-03-31 09:43:33
710
原创 源码剖析STL内存分配器 std::allocator,让你能硬刚面试官
本期主要讲解C++ STL中的内存分配器std::allocator及其特性萃取器__gnu_cxx::__alloc_traits。为防止混淆,规定如下:allocator:泛指内存分配器,仅仅是一个术语。std::allocator:是STL实现的内存分配器类std::allocator。更多硬核知识,欢迎关注:__gnu_cxx::new_allocatorC++的默认的内存分配器std::allocator,继承至__gnu_cxx::new_allocator。而 __gnu
2021-03-03 10:14:49
1900
1
原创 一道面试题:你了解哪些编译器优化行为?知道Copy elision 、RVO吗?
C++11以后,g++ 编译器默认开启复制省略(copy elision)选项,可以在以值语义传递对象时避免触发复制、移动构造函数。copy elision 主要发生在两个场景:函数返回的是值语义时函数参数是值语义时返回值优化返回值优化RVO(Return Value Optimization,RVO),即避免返回过程触发复制 / 移动构造函数。根据返回的值是否是匿名对象,可以分为两类:具名返回值优化 NRVO (Named Return Value Optimization,NRVO)匿
2021-02-28 08:53:51
441
原创 深入剖析 std::unordered_map 的实现原理之 Hash冲突、退化
本次来讲解下c++中 std::unordered_map的设计原理。std::unordered_map里面has-a哈希表,它提供的的各个方法基本都是由hashtable封装实现,因此在下文使用hashtable来描述std::unordered_map。 // gnu 实现 template<typename _Key, typename _Tp, typename _Hash = hash<_Key>,
2021-02-27 21:33:58
8180
4
原创 C++ & Linux后端开发进阶之:C++的开源项目
在前文【C++ & Linux后端进BAT的学习路线】中,讲述了C++后端的学习路线。进一步,本文讲解两个问题:怎么阅读学习C++源码学习哪些C++项目怎么学习在介绍具体的C++项目之前,先介绍我自己学习开源项目、阅读源码的方式:首先!!!要学会使用这个项目。以STL为例,应该极少有人学习STL是直接从阅读STL源码开始的,基本都是从学习std::vector、std::list等容器的使用方式开始。当你能熟练使用了,才有会更好的基础来对内部实现一探究竟。再看看有没有相关书籍、博客
2021-02-27 19:55:08
2883
原创 C++ & Linux 后端之进BAT的学习路线
C++,相对别的语言学习门槛会高一点,主要原因是学习路线不明确,没有像Java那么多资料。但在大厂里C++岗位不比java少多少。想介绍下自己学习C++的路线,以及自己的看书方式,供参考。Cpper雄起!!!C++基础如果刚接触C++,建议去B站搜C++视频辅助《C++ prime 第五版》一起学习。b站黑马程序员的C++学习视频《C++ prime 第五版》关于《C++ prime 第五版》与 《C++ prime Plus 第六版》的选择问题:如果只能选择一本,个人建议选《C++ pri
2021-02-26 10:51:46
593
2
原创 tomcat启动时闪退问题之CATALINA_HOME配置
我是win7系统,在tomcat安装bin目录下启动tomcat时,总是闪退,一闪而过,报错信息都没有。然后在cmd下输入命令行:startup.bat.(当然前提是你配置了tomcat的系统环境变量)。但是cmd控制台会显示错误信息:CATALINA_HOME is not defined correctly需要在环境变量下配置:用户变量路径分别对应着 Tomcat和jdk的安装路...
2018-12-18 20:38:39
2484
原创 《opencv学习笔记二》opencv中绘制直方图之归一化处理统计结果
opencv中用calHist函数得到直方图信息后,需要将其绘制出来,但是有些像素点的统计次数可能几千次甚至上万次,为了将其在一个预先确定大小的图(设为dstImage)中绘制出来,需要将得到的直方图各个像素点的次数归一化到 [o,dstImage.rows] 这个范围内,再进行绘制。可以使用函数:结合修改的官方参考程序进行解释。 #include "opencv2/highgui.hp...
2018-12-04 21:44:57
2468
1
原创 opencv里的Moments成员变量的理解
在opencv里,Moments定义如下(参考opencv官方文档)class Moments{public:Moments();Moments(double m00, double m10, double m01, double m20, double m11,double m02, double m30, double m21, double m12, double m03 );...
2018-12-03 20:28:25
4810
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人