创建工作区和功能包
- 1、创建工作区:使用mkdir命令创建一个目录作为工作区,区内创建一个叫做src的子目录,存放功能包的源代码。
- 2、创建功能包:catkin_create_pkg package-name
创建了一个存放功能包的目录,并在那个目录下生成两个配置文件。- 1.package.xml(清单文件)
- 2.CMakeLists.txt,CMake脚本文件,包含一系列编译指令,包括生成的可执行文件,需要的源文件和需要的头文件和链接库。
- 3、编辑清单文件:编译package.xml文件
编写一个简单的helloworld程序
#include<ros/ros.h>
Int main(int argc,char **argv)
{
ros::init(argc,argv,”hello_ros”);
ros::NodeHandle nh;
ROS_INFO_STREAM(“Hello, ROS!”);
}
使用VScode,CMake,编译实现HelloWorld
REF:https://blog.csdn.net/sinat_38245860/article/details/88766874
- 1.新建空白文件夹,使用VScode打开文件夹。
- 2.Ctrl+shift+P 打开命令面板输入CMake:Quick Start,选择GCC编译
- 3.输入项目名称,选择生成可执行文件
- 4.自动生成CMakeLists.txt、helloworld.cpp、build文件夹
- 5.点击调试-启动调试,选择C++
- 6.编辑launch.json,输入program下的文件路径
- 7.保存后启动调试
- 8.终端进入build文件目录下
- 9.输入
cmake..
make..
.\可执行文件名
运行程序
学习类的使用并写一个简单的程序
-
1.新建空白文件夹classstudy
-
2.用vscode打开,使用cmake start创建工程,输入工程名为classtest
-
3.在main.cpp中编写代码如下:
#include <iostream>
using namespace std;
class test{
public:
int x_1;
void init(int x,int y,int z);
void display(void);
private:
int y_1;
protected:
int z_1;
};
void test::init(int x,int y,int z){
x_1=x;
y_1=y;
z_1=z;
}
void test::display(void){
cout<<"x="<<x_1<<endl;
cout<<"y="<<y_1<<endl;
cout<<"z="<<z_1<<endl;
}
int main(void) {
int x=1,y=2,z=3;
test t;
t.init(x,y,z);
t.display();
cout<<"This is a test!"<<endl;
return 0;
}
-
4.点击下方build按键进行编译
-
5.点击启动调试,生成launch.json文件,修改其中的program路径为"${workspaceFolder}/build/classtest"
(classtest为CmakeLists.txt中设置的生成的可执行文件名) -
6.点击启动调试,终端输出结果如下:
整体截图如下: