自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(130)
  • 收藏
  • 关注

原创 Ubuntu 16.04设置电脑静态IP

查看当前网络配置nmcli — command-line tool for controlling NetworkManager。该命令可以完成网卡上所有的配置工作,并且可以写入配置文件,永久生效。nmcli dev show可以查看当前网络的Gateway、DNS servers,这些信息下一步要用。更改网络配置系统设置->network,编辑想要修改的网络。注意以下几点:1、Method:Manual2、address:想要设定的静态IP;NetMask:255.255.255.0;G

2020-10-15 12:09:06 395

原创 ROS多机通信,分布式计算

0、首先安装ssh,确保多台机器能够互相ping通。1、时间同步#分别安装chrony sudo apt-get install chrony#分别安装ntpdate:sudo apt-get install ntpdate#然后分别同步时间:sudo ntpdate ntp.ubuntu.com#查看与另外一台电脑的时间差sudo ntpdate -q xx.xx.xx.xx(IP)2、设置电脑A为ROS_MASTER,roscore也在A上启动#在bashrc中添加LOCA

2020-07-31 20:39:29 441

原创 linux 服务器(xavier)可以ping通,但是无法ssh

问题描述:电脑与服务器在同一网络中,ping name@ip可以通,但是ssh name@ip卡死无反应。解决方案:0、重启大法1、检查ssh服务是否开启ubuntu不会默认安装ssh-server。先进行ssh服务的安装```sudo apt-get install openssh-server ```​ 以root用户登录Linux,打开终端,运行:/etc/init.d/sshd restrat2、防火墙限制22端口查看ssh是否监听22端口: ```ps -ef | grep

2020-06-23 14:44:19 1766

原创 C++:const关键字的应用

终于搞明白了const的各种用法const 是 constant 的缩写,本意是不变的,不易改变的意思。在 C++ 中是用来修饰内置类型变量,自定义对象,成员函数,返回值,函数参数。C++ const 允许指定一个语义约束,编译器会强制实施这个约束,允许程序员告诉编译器某值是保持不变的。如果在编程中确实有某个值保持不变,就应该明确使用const,这样可以获得编译器的帮助。如果不想让编译器察觉...

2020-02-28 11:08:48 236

原创 c++成员变量初始化方法:声明时初始化、初始化列表、构造函数初始化

c++成员变量初始化方法:声明时初始化、初始化列表、构造函数初始化有人说在声明的时候初始化相当于在构造函数中初始化,其实不是的,成员变量初始化的顺序为:先进行声明时初始化,然后进行初始化列表初始化,最后进行构造函数初始化,如下代码:(另外初始化列表中初始化的顺序是和变量声明的顺序一样,而与列表中的顺序无关)1 #include "stdafx.h" 2 #include <iostre...

2020-02-28 10:12:53 7651 1

原创 ADB error:device not found。Ubuntu更新adb

问题描述发现自己电脑无法连接上安卓设备,提示无法找到设备:$ adb root* daemon not running. starting it now on port 5037 ** daemon started successfully *error: device not found而使用别人的电脑发现可以连接上,对比发现别人电脑ADB版本1.0.39,我的1.0.32。原因应...

2020-02-27 14:28:45 579

原创 使用VS Code调试ROS或其他可执行程序--gdb的使用

用习惯了Clion集成开发环境,调试程序时,只需要点击一下工具栏上的调试按钮,便可以直接调试程序。不过Clion对ROS的支持不友好,编写ROS代码和调试都使用VS Code。VS Code在调试程序之前,需要先配置可执行文件的路径。我这里配置使用gdb进行调试。打开VS Code,点击左侧功能栏中的小虫子,DEBUG AND RUN配置为gdb launch,会弹出配置模板,类似于{ ...

2020-01-21 17:54:01 824

原创 lz4压缩算法

简介lz4是目前综合来看效率最高的压缩算法,更加侧重压缩解压速度,压缩比并不是第一。在当前的安卓和苹果操作系统中,内存压缩技术就使用的是lz4算法,及时压缩手机内存以带来更多的内存空间。本质上是时间换空间。压缩原理lz4压缩算法其实很简单,举个压缩的栗子输入:abcde_bcdefgh_abcdefghxxxxxxx输出:abcde_(5,4)fgh_(14,5)fghxxxxxxx...

2019-11-28 11:58:36 3224

原创 aptitude与apt-get的区别和联系

使用apt-get安装包时提示依赖错误。apt-get install E: Unable to correct problems, you have held broken packages解决办法是不使用apt-get安装库,而是使用aptitudeaptitude 与 apt-get 一样,是 Debian 及其衍生系统中功能极其强大的包管理工具。与 apt-get 不同的是,apti...

2019-11-12 21:26:35 459

转载 Markdown数学公式语法

行内与独行行内公式:将公式插入到本行内,符号:$公式内容$,如:xyzxyzxyz独行公式:将公式插入到新的一行内,并且居中,符号:$$公式内容$$,如:xyzxyzxyz上标、下标与组合上标符号,符号:^,如:x4x^4x4下标符号,符号:_,如:x1x_1x1​组合符号,符号:{},如:168O2+2{16}_{8}O{2+}_{2}168​O2+2​汉字、字体与格式...

2019-10-30 16:42:25 190

原创 Markdown数学公式语法大全

https://www.jianshu.com/p/e74eb43960a1

2019-10-30 16:37:59 331

原创 安装clang编译器默认的GCC

编译器性能对比gcc/g++ 和 clang/clang++ 都是 Linux 下常用的 C/C++ 编译器。gcc 是 GNU 亲儿子,Ubuntu 等常用发行版标配。clang 是后起之秀,配合 llvm,以优秀的前端闻名于世,现在已经是 Mac(XCode) 的默认编译器,微软等大公司都在往上靠,前景一片光明。知乎上对几个主流编译器的评价:(1)前景最好的应该是clang,错误提示/编译...

2019-10-30 16:18:53 2351

原创 opencv-获取OpenCV构建信息(getBuildInformation)

如何使用C ++查找OpenCV构建信息?#include <opencv2/opencv.hpp>int main(void){ std::cout << cv::getBuildInformation() << std::endl;}如何使用Python找到OpenCV构建信息?import cv2print cv2.getBuildIn...

2019-10-16 12:09:12 1132

原创 ROS2:spin() spin_some()函数

在介绍ROS2 spin函数之前,先来回顾一下ROS1中 spin函数的使用ROS1 ros::spin()和ros::spinOnce()函数关于ros消息发布器和订阅器的教程: http://wiki.ros.org/ROS/Tutorials/WritingPublisherSubscriber(c++)看完链接里面的教程后,我们知道:消息发布器在一个while里面一直循环发送“h...

2019-09-19 16:07:08 5705

原创 C++ explicit

C++ explicitexplicit关键字,通常用来修饰构造函数,防止隐式转换的发生。在C++中,我们有时可以将构造函数用作自动类型转换函数。但这种自动特性并非总是合乎要求的,有时会导致意外的类型转换,因此,C++新增了关键字explicit,用于关闭这种自动特性。即被explicit关键字修饰的类构造函数,不能进行自动地隐式类型转换,只能显式地进行类型转换。注意:只有一个参数的构造函数...

2019-09-04 15:28:38 117

原创 析构函数 private或delete

类中“私有”权限的含义就是:私有成员只能在类域内被访问,不能在类域外进行访问。把析构函数定义为私有的,就阻止了用户在类域外对析构函数的使用。这表现在如下两个方面:禁止用户对此类型的变量进行定义,即禁止在栈内存空间内创建此类型的对象。要创建对象,只能用 new 在堆上进行。禁止用户在程序中使用 delete 删除此类型对象。对象的删除只能在类内实现,也就是说只有类的实现者才有可能实现对对象...

2019-09-04 15:12:03 540

转载 markdown编辑器使用

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Ma...

2019-09-04 15:03:17 105

原创 docker:删除本地镜像

背景本地空间较小,想删除无用的docker镜像内容。操作步骤查看本地docker镜像docker images会列出本地所有镜像的REPOSITORY、TAG、IMAGE ID等信息删除本地镜像,根据IMAGE ID删除docker rmi imageID会提示无法删除镜像,因为有根据这个镜像创建的子镜像存在Error response from daemon: confl...

2019-09-02 10:38:05 1007

原创 VScode:添加头文件路径

按F1或 Ctrl+Shift+p 在弹出的备选选项中选择 C/C++:Edit Configuration(JSON),自动打开c_cpp_properties.json配置文件在includePath中添加头文件路径c_cpp_properties.json{ "configurations": [ { "name": "Linux",...

2019-08-27 15:15:28 34827

原创 找不到so库问题:bin/ld:can not find -llib ; No rule to make target; libxxx.so, needed by .., not found

找不到so库问题bin/ld:can not find -llibNo rule to make targetlibxxx.so, needed by …, not found (try using -rpath or -rpath-link)后面通常紧跟一堆 undefined reference to[ 39%] Linking CXX executable ../../../....

2019-08-15 14:15:41 1670

原创 so库工具及lib.so 、lib.so.1、 lib.so.1.07三者的联系

warning: libgtk-3.so.0, needed by …/…/lib/libopencv_highgui.so.3.3.1, not found (try using -rpath or -rpath-link)ld -lxxx --verboseThis question is not specific to Solaris.When you install a shar...

2019-08-13 19:34:09 4408

原创 cmake : make install 时指定安装路径

make install 时指定安装路径make DESTDIR=/install/directory installorcmake -DCMAKE_INSTALL_PREFIX=/install/directory ..

2019-08-09 18:31:38 6313

转载 git查看某次提交/更新所更改的文件及内容

git查看某次提交/更新所涉及的文件,不是文件内容哈,网上很多说到用git show hash_id 怎么看文件内容,如果只是想简单的看看操作了哪些文件,可以这样:打印出所有的提交记录git log查看最近3条更新日志,并且简单显示出所涉及的文件 git log -3 --stat若查看某一次提交的内容,执行下面命令(可以不加–stat)git show 548c72f42f51...

2019-07-05 15:20:47 7655

转载 c++ : assert() 宏作用

程序一般分为Debug 版本和Release 版本,Debug 版本用于内部调试,Release 版本发行给用户使用。断言assert 是仅在Debug 版本起作用的宏,它用于检查“不应该”发生的情况。在运行过程中,如果assert 的参数为假,那么程序就会中止(一般地还会出现提示对话,说明在什么地方引发了assert)。https://www.cnblogs.com/daochong/p/65...

2019-07-04 12:05:40 282

转载 google protobuf

google protobuf是一个灵活的、高效的用于序列化数据的协议。相比较XML和JSON格式,protobuf更小、更快、更便捷。google protobuf是跨语言的,并且自带了一个编译器(protoc),只需要用它进行编译,可以编译成Java、python、C++、C#、Go等代码,然后就可以直接使用,不需要再写其他代码,自带有解析的代码。更详细的介绍见: Protocol Buffe...

2019-07-03 18:43:56 346

转载 Rviz: fixed frame [world] does not exist

Rviz: fixed frame [world] does not existI would like to extend jaco answer as this is an easy solution to a struggle lot of people, including myself run into when starting rosrun --debug rviz rviz (d...

2019-06-28 17:00:13 3325

原创 .hpp报multiple definition重定义错误

I build up a c++ library of couple hpp files and they define some classes. I have other projects to include this library for inheriting those perdefined classes. In those child-projects, it works wel...

2019-06-24 18:02:16 3076 2

转载 c++ 之 std::move 原理实现与用法总结

在C++11中,标准库在中提供了一个有用的函数std::move,std::move并不能移动任何东西,它唯一的功能是将一个左值强制转化为右值引用,继而可以通过右值引用使用该值,以用于移动语义。从实现上讲,std::move基本等同于一个类型转换:static_cast<T&&>(lvalue);std::move函数可以以非常简单的方式将左值引用转换为右值引用。(左...

2019-06-24 10:50:58 2007 1

原创 车辆运动学模型:阿克曼转向模型

车辆简化模型阿克曼转向原理模型的分类解算仅前轮转向,后轮角度不变这种模式适用于多数车辆,只有前面轮子可以转向前后轮均可转向这种模式可实现全向运动,常用的运动模式如下:(1)前后轮角度相反(2)前后轮角度相同后续更新参考文献:[1] https://blog.csdn.net/u013914471/article/details/82968608[2]...

2019-06-21 10:10:39 27457

转载 cmake --常用变量和常用环境变量

一、变量的引用方式是使用“${}”,在IF中,不需要使用这种方式,直接使用变量名即可二、自定义变量使用SET(OBJ_NAME xxxx),使用时${OBJ_NAME}三、cmake的常用变量:CMAKE_BINARY_DIR,PROJECT_BINARY_DIR,_BINARY_DIR:这三个变量内容一致,如果是内部编译,就指的是工程的顶级目录,如果是外部编译,指的就是工程编译发生的目录...

2019-06-05 11:10:42 780

原创 cmake -- No rule to make target "xxx.so "

catkin build 时出现错误: No rule to make target "xxx.so "这种情况大概率是so路径不对,或者该路径下没有xxx.so原cmakelists,so为绝对路径 add_dependencies(SmartCar ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS}) targe...

2019-06-05 10:38:25 4751

原创 GCC版本问题:编译找不到 math.h stdlib.h: fatal error: stdlib.h: No such file or director

cmake编译时报错: 找不到头文件math.h stdlib.hfatal error: stdlib.h: No such file or directoryfatal error: math.h: No such file or directoryIn file included from /usr/local/include/c++/6.2.0/bits/stl_algo.h:59...

2019-06-04 11:03:42 27945 3

转载 C++ explicit关键字详解

首先, C++中的explicit关键字只能用于修饰只有一个参数的类构造函数, 它的作用是表明该构造函数是显示的, 而非隐式的, 跟它相对应的另一个关键字是implicit, 意思是隐藏的,类构造函数默认情况下即声明为implicit(隐式).那么显示声明的构造函数和隐式声明的有什么区别呢? 我们来看下面的例子:class CxString // 没有使用explicit关键字的类声明, 即...

2019-06-03 19:13:20 163

转载 C++中static_cast和dynamic_cast强制类型转换

在C++标准中,提供了关于类型层次转换中的两个关键字static_cast和dynamic_cast。一、static_cast关键字(编译时类型检查)用法:static_cast < type-id > ( expression ),该运算符把expression转换为type-id类型,但没有运行时类型检查来保证转换的安全性,它主要有如下几种用法:(1)用于基本数据类型之间的...

2019-05-31 11:06:07 452

转载 git cherry-pick合并某个commit

git cherry-pick合并某个commit1、使用方法及其作用git cherry-pick可以选择某一个分支中的一个或几个commit(s)来进行操作(操作的对象是commit)。例如,假设我们有个稳定版本的分支,叫v2.0,另外还有个开发版本的分支v3.0,我们不能直接把两个分支合并,这样会导致稳定版本混乱,但是又想增加一个v3.0中的功能到v2.0中,这里就可以使用cherry-...

2019-05-28 11:52:36 208

转载 git revert-- 撤销中间某次提交

当想撤销中间某次提交时,强烈建议使用revert命令,而不是reset。git reset –hard commit_id 虽然可以回退远程库,但是其要求pull最新代码的每个人的本地分支都要进行版本回退。这样就增加工作量了!正确的步骤:git revert commit_id//如果commit_id是merge节点的话,-m是指定具体哪个提交点git revert commit_id...

2019-05-28 11:39:17 1811

转载 ros -- launch与rosrun工作目录

在launch文件中启动节点,那么这个节点的工作目录是什么呢?在node程序中如果创建一个文件,这个文件的默认位置在哪里?在launch中node节点有一个cwd参数,按照文档的解释,这个参数可以为ROS_HOME或node。当设置为ROS_HOME时,cwd为ROS_HOME参数指定的位置。当设置为node时就是对应node所在的位置。但是如果你echo $ROS_HOME时会发现这个值没有设...

2019-05-23 18:01:59 2003

转载 linux指令 -- scp 远程复制

每天一个linux命令:scp命令scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的。可能会稍微影响一下速度。当你服务器硬盘变为只读 read only system时,用scp可以帮你把文件移出来。另外,scp还非常不占资源,不会提高多少系统负荷,在这一点上,rsync就远远不及它...

2019-05-23 16:15:10 599

转载 linux--创建链接

实例:ln -s /home/gamestat /gamestatlinux下的软链接类似于windows下的快捷方式ln -s a b 中的 a 就是源文件,b是链接文件名,其作用是当进入b目录,实际上是链接进入了a目录如上面的示例,当我们执行命令 cd /gamestat/的时候 实际上是进入了 /home/gamestat/值得注意的是执行命令的时候,应该是a目录已经建立,目录...

2019-05-23 16:01:59 1264

原创 添加一个或多个ssh key

通过git进行代码管理时,对于个人代码和公司私密代码,需要配置不同的邮箱和ssh key比如:github上存放自己的个人小项目,用的邮箱是个人的gitlab 上存放公司项目,邮箱是 公司员工邮箱因此需要添加多个 ssh keyhttps://www.cnblogs.com/fanyong/p/3962455.html...

2019-05-17 14:30:48 845

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除