C++
Vitcharm
PolyU
展开
-
用Macbook自带终端工具写C++
用Macbook自带终端工具写C++一、打开文本编辑器(这里使用Sublime为例),新建窗口,编写文件后,保存后修改后缀名为.cpp格式。二、打开终端,输入cd Desktop(文件所在路径),或者直接拖拽文件到终端窗口自动生成路径→输入g++ 1.cpp→ 1.cpp文件所在目录下会出现a.out的exec文件→ 接着在终端上输入./a.out→ 即可看见输出的结果。关键词:g++...原创 2019-03-05 00:23:52 · 2170 阅读 · 0 评论 -
ROS: Publisher and Subscriber
通过上一节编写ROS的第一个程序hello_world,我们对ROS的整个编程开发过程有了基本的了解,现在我们就来编写真正意义上的使用ROS进行节点间通信的程序。由于之前已经建好了catkin_ws这样一个工作空间,以后开发的功能包都将放在这里面,这里给新建的功能包取名为topic_example,在这个功能包中分别编写两个节点程序publish_node.cpp和subscribe_node.c...原创 2019-09-10 17:23:00 · 2959 阅读 · 0 评论 -
C/C++: printf 格式化输出符号详细说明
%a 浮点数、十六进制数字和p-记数法(c99%A 浮点数、十六进制数字和p-记法(c99)%c 一个字符(char)%C 一个ISO宽字符%d 有符号十进制整数(int)(%ld、%Ld:长整型数据(long),%hd:输出短整形。) %e 浮点数、e-记数法%E 浮点数、E-记数法%f 单精度浮点数(默认float)、十进制记数法(%.nf 这里n表示精确到小数...原创 2019-09-10 16:43:58 · 3532 阅读 · 1 评论 -
ROS: Compile package with cpp file
If you have a cpp file under package/src like this:where you include the library “ros/ros.h”, then you have to add dependency for roscpp.CMakeLists.txt:首先,用文本编辑器gedit打开功能包目录下的CMakeLists.txt文件,在f...原创 2019-09-09 17:30:01 · 190 阅读 · 0 评论 -
ROS: System file structure
How to create workspace?#先切回主目录cd ~/#新建工作空间文件夹mkdir catkin_ws#在catkin_ws目录下新建src文件夹cd catkin_wsmkdir src#初始化src目录,生成的CMakeLists.txt为功能包编译配置cd srccatkin_init_workspace#切回catkin_ws目录,对该工作空间执...原创 2019-09-09 16:42:55 · 155 阅读 · 0 评论 -
ROS: Create your own workspace & Package
打开命令行终端,分别输入如下命令:#先切回主目录cd ~/#新建工作空间文件夹mkdir catkin_ws#在catkin_ws目录下新建src文件夹cd catkin_wsmkdir src#初始化src目录,生成的CMakeLists.txt为功能包编译配置cd srccatkin_init_workspace#切回catkin_ws目录,对该工作空间执行一次编译cd...原创 2019-09-09 14:49:04 · 143 阅读 · 0 评论 -
C++工程项目头文件与源文件管理
这个问题在许多C++程序员看来会很搞笑,“这么简单的问题还用得着你废话!”。但是由于本人生性愚钝,学C++的时候,确实花了很久的时间都搞不明白,只是会写一个文件,但不会写一个工程。而用C++编写比较大型的项目时,文件的分割管理确实确实是非常必要的 。下面就非常简洁明了地谈谈头文件(.h)和源文件(.cpp)应该怎么写。头文件(.h): 写类的声明(...转载 2019-07-25 14:49:00 · 4135 阅读 · 1 评论 -
【C++】递归方法解决问题汇总(1)
一、递归:函数的嵌套调用我们知道,函数不能嵌套定义,但是可以嵌套调用。嵌套的层数无限制:以编程实现阶乘算法为例:在方法fact的定义中,又不断地调用自身以实现阶乘。事实上,这一种递归调用和普通调用没有区别。fact函数中这个被递归调用的fact函数可以理解为只是另外一个函数,而这个函数恰好是原函数的拷贝。二、递归的过程在学习C++函数的时候我们知道,在main函数里调用子函数,相当...原创 2019-04-11 22:06:38 · 1069 阅读 · 0 评论 -
使用C++ Eigen库操作四元数实现坐标系转换
首先,来看如何用四元数来表达对一个点对旋转:对应式(3.19)的解释如下:省略推导,直接给出四元数到旋转矩阵对转换方式:下面给出一个案例,参考高博《视觉SLAM十四讲》...原创 2019-04-02 13:15:30 · 2970 阅读 · 2 评论 -
使用C++ Eigen库求解线性方程组Ax=b
Eigen(http://eigen.tuxfamily.org)是常用的 C++ 矩阵运算库,具有很高的运算效率。大部分 需要在 C++ 中使用矩阵运算的库,都会选用 Eigen 作为基本代数库,例如 Google Tensorflow,Google Ceres,GTSAM 等。本次编程实现***A***为100X100随机矩阵时,用QR和Cholesky分解求x。同时总结了一些有关线性方程组数...原创 2019-04-01 16:21:00 · 14989 阅读 · 3 评论 -
【C++】 指针
C++ 指针学习 C++ 的指针既简单又有趣。通过指针,可以简化一些 C++ 编程任务的执行,还有一些任务,如动态内存分配,没有指针是无法执行的。所以,想要成为一名优秀的 C++ 程序员,学习指针是很有必要的。正如您所知道的,每一个变量都有一个内存位置,每一个内存位置都定义了可使用连字号(&)运算符访问的地址,它表示了在内存中的一个地址。请看下面的实例,它将输出定义的变量地址:实例...原创 2019-09-17 11:43:13 · 139 阅读 · 0 评论