6 白夜行的狼

尚未进行身份认证

一个感性的工科生

等级
TA的排名 3w+

emplace_back VS push_back

0. 写在最前面本文持续更新地址:https://haoqchen.site/2020/01/17/emplace_back-vs-push_back/std::vector中实现了这两个函数,主要作用都是向一个vector中增加一个元素,但它们其实有很多细微的差别。有很多人似乎对这两个函数有一些误解,找了一些资料,然后自己做了个实验总结了一下这两个函数的异同。如果觉得写得还不错,可以找我其...

2020-01-20 09:20:45

double VS float

0. 写在最前面本文持续更新地址:https://haoqchen.site/2019/12/28/double-vs-float/首先说明,如果只是一两次的浮点运算,无脑使用double即可。下面主要针对需要大量浮点运算的情况做分析,比较float和double的优缺点。如无特殊说明,我的环境如下:系统:Ubuntu1604(64bit)编译器:g++ 5.4.0CPU:i7-477...

2020-01-05 21:29:05

关于用户界面编写的几点建议

0. 写在最前面本文持续更新地址:https://haoqchen.site/2019/11/14/advice-for-ui/本文档介绍一些编写UI界面时的建议,主要是日常工作中发现的,能够帮助提升代码质量,提高用户体验的方法和技巧。我曾经用过Matlab、Qt、MFC、Labview来编写界面,都会涉及到与硬件的交互,个人感觉最强的是Qt。如果觉得写得还不错,可以找我其他文章来看看哦~~...

2019-12-28 20:40:58

Linux时间相关函数总结

0. 写在最前面本文持续更新地址:https://haoqchen.site/2019/12/17/linux-time-summary/最近写程序涉及到时间相关的,包括当前时间呀,进程运行的时间差呀,线程某段程序的时间消耗呀等等。然后查了比较多Linux下的时间函数。发现每个函数之间都有或多或少的区别,应用场景很不一样。在此做个总结和记录。如无特殊说明,我的系统是Ubuntu1604(64...

2019-12-28 20:35:22

用CPP控制rosbag record的运行和关闭

0. 写在最前面本文持续更新地址:https://haoqchen.site/2019/11/30/rosbag-run-and-kill-cpp/我们经常会用rosbag来录一些ROS的消息进行离线调试什么的。如果是在终端运行,输入命令,然后Ctrl + C就可以运行和关闭了,但如果我想在C++程序里面去控制什么时候录包,什么时候停止录包呢?这篇文章对以上的情形进行总结。如果觉得写得还不...

2019-11-30 19:28:56

ROS Navigation之amcl源码解析(完全详解)

0. 写在最前面本文持续更新地址:https://haoqchen.site/2018/05/06/amcl-code/这篇文章记录下自己在阅读amcl源码过程中的一些理解,如有不妥,欢迎评论或私信。本文中所有代码因为篇幅等问题,都只给出主要部分,详细的自己下载下来对照着看。如果觉得写得还不错,就请收藏一下啦~~~也可以找一下我写的其他包的源码解读来看一下。关注一下我的专栏什么的。帮我g...

2019-11-16 19:03:28

WARNING ** io features related to openni2 will be disabled

使用PCL编译某个ROS工程时出现这个waring:** WARNING ** io features related to openni2 will be disabled** WARNING ** io features related to pcap will be disabled** WARNING ** io features related to png will be dis...

2019-07-22 12:00:46

rosrun rob[rospack] Warning: error while crawling boost::filesystem::status: Permission denied .gvfs

rosrun 用tab进行补全时出现了以下的错误:rosrun rob[rospack] Warning: error while crawling /home/your_name: boost::filesystem::status: Permission denied: "/home/your_name/.gvfs"解决办法:sudo umount ~/.gvfsrm -rf .gvf...

2019-06-24 20:28:33

Qt编译错误undefined reference to `vtable for MainWindow'

0. 写在最前面我是用CMake来构建Qt工程时出现了这个错误,直观意思是MainWindow的虚表没有定义,猜测是某些子类没有构建成功,无法链接。我这里已经按照官方的意思把set(CMAKE_AUTORCC ON)set(CMAKE_AUTOUIC ON)set(CMAKE_AUTOMOC ON)set(CMAKE_PREFIX_PATH 、yourQtPath/5.10.1/gcc_...

2019-06-23 18:09:38

CSDN博客管理持续更新(包括阅读量统计、博客首尾替换)

0. 写在最前面日常用CSDN来记录和总结自己学习到的知识,写着写着越来越多的时候,就希望能有一些快捷的工具帮助自己管理。无奈CSDN提供的功能太少,网上找到的又都太老,只能自己动手写了。这些代码都托管到github上,有问题大家可以在issue中讨论,会持续更新。目前主要是在Linux下进行管理,等有时间了丰富下Windows下的github地址:https://github.com/Hao...

2019-05-09 21:53:50

ROS多个工作空间存在同名包的BUG

0. 写在最前面为了测试方便,我有多个工作空间。不同工作空间会存在一些同名的包。按照官网教程的说法,只要source了setup就可以将当前工作空间设置为ROS顶层。一天在测试的时候发现,并不能通过修改.bashrc来修改当前活跃的工作空间。之前source的工作空间仍然存在,一直调用的是之前的工作空间的包。1. 问题描述查看你当前的ROS包路径:echo $ROS_PACKAGE_PA...

2019-03-28 16:06:52

fatal err Eigen/Dense No such file or directory(unsupported/Eigen/FFT、Eigen/Core也是一样的道理)

0. 写在最前面自己在编译一个程序的时候遇到了这个问题。搜索网上的一些答案,很多都说得不详,或者解决办法不好。最后找到了stackoverflow的一个问题,终于解决了,在此分享一下,避免大家走弯路。有帮助到你的话点个赞或者关注呗~~~1. 解决办法究其原因,就是编译器找不到这个头文件了,首先要确保你已经安装了Eigen3.Eigen其实只是一个纯头文件的库,你直接安装放到include目...

2019-03-26 22:34:36

ROS向节点传递参数的方法总结(rosrun,launch) + (参数服务器,main函数参数)

0. 写在最前面ROS的节点有很多中调用方式,包括rosrun,launch,直接运行等,向节点内传递参数的方式也有很多,在此做个总结。左侧专栏还在更新其他ROS实用技巧哦,关注一波?1. rosrun + 参数服务器传递ros::init(argc, argv, "imu2txt");ros::NodeHandle nh("~");std::string file_name;nh....

2019-03-22 19:49:11

同步Sublime Text配置

0. 写在最前面sublime是一款很好的跨平台代码编辑器,相信很多人都在用。但它的配置也是一件很烦的事,因此很多人都希望多个系统的sublime配置能够一样。本文就是讲解如何最正确地同步Sublime Text的配置。网上很多教程其实都是错的,官网给出了最好的同步建议:https://packagecontrol.io/docs/syncing不想看英文的我简单说下。1. 同步用户设置...

2019-03-21 18:27:20

W: Failed to fetch http://packages.microsoft.com/repos/vscode/dists/stable/main/binary-amd64/Package

W: Failed to fetch http://packages.microsoft.com/repos/vscode/dists/stable/main/binary-amd64/Packages Hash Sum mismatchE: Some index files failed to download. They have been ignored, or old ones use...

2019-03-21 17:50:38

Ubuntu(Linux)下更新CMake,最安全的更新

0. 写在最前面本文将介绍一种在Ubuntu系统下快速升级CMake到指定版本的方法。之前找了很多方法,要么需要删除原来的版本,如果安装不成功会非常危险,之前的编译环境都没了。另外就是ppa的更新,我试了也不行。本文介绍的方法只需要下载安装包,然后改一下CMake的链接即可。你的Star是作者坚持下去的最大动力哦~~~各版本安装包下载地址:https://cmake.org/files/...

2019-03-13 09:21:42

Ignoring Provides line with DepCompareOp for package gdb-minimal

运行sudo apt-get update时出现。参考https://askubuntu.com/questions/946402/apt-get-update-warning-ignoring-provides-line-with-depcompareop-for-package

2019-03-04 21:33:39

使用Remmina远程登录Ubuntu系统并实现文件共享(可实现类似Teamviewer功能)

0. 写在最前面最近teamviewer开始想要收费了,越来越限制功能,迫不得已用回Remmina,使用Ubuntu远程连接另外一台Ubuntu还是很方便的。下面将介绍如何实现远程登录和文件共享。如果觉得写得还不错,就请收藏一下啦~~~也可以找一下我写的其他文章。关注一下我的专栏什么的。你的Star是作者坚持下去的最大动力哦~~~Remmina是一个集成多种协议的远程连接终端,Ubuntu...

2019-03-04 21:24:10

dlib+OpenCV实现人脸登录系统

0. 写在最前面本文持续更新地址:https://haoqchen.site/2019/02/28/log-system/你的Star是作者坚持下去的最大动力哦~~~本文介绍了使用dlib的人脸检测、对齐、识别功能加上OpenCV的XML文件读写功能实现了一个登录系统。可以实现用户的用户名、密码、人脸特征注册、登录、数据的本地保存等功能。目前只实现了命令行版本,需要界面可以自己开发。git...

2019-02-28 23:06:42

Linux下常用小工具、命令行

查看CPU信息CPU全部信息:cat /proc/cpuinfo支持的指令集:cat /proc/cpuinfo | grep flags

2019-02-28 23:02:10

查看更多

勋章 我的勋章
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。