这里提供两种方法。

第一种方法:clang_format

1.安装clang format

sudo apt-get install -y clang-format-3.6

2.从github的roscpp_code_format项目,下载格式文件.clang-format,注意它是一个隐藏类型的文件,可以通过Ctrl+H显示出来

3.将.clang-format文件拷贝到工作空间中,例如:

~/catkin_ws/.clang-format

4.代码格式化单个文件:

clang-format-3.6 -i -style=file MY_ROS_NODE.cpp

5.代码格式化整个工作空间的所有代码

find . -name '*.h' -or -name '*.hpp' -or -name '*.cpp' | xargs clang-format-3.6 -i -style=file $

详细的使用方法,请参考:roscpp_code_format

 

第二种方法:eclipse formatter

如果你使用的是eclipse,这里整理了一个eclipse版本的代码格式化配置文件,

请到github上下载:eclipse_roscpp_code_format,详细使用请参考其说明文档README.md

ROS知识(21)----ROS C++代码格式化的更多相关文章

  1. ROS知识(2)----理解ROS系统结构

    学习新事物,方法高于技术本身,如果没有把握"BIG PICTURE"的话很难理解进去.通过以下几点进行理解ROS: ROS实际上不是操作系统,他只是一个通信的框架,一个代码管理的架 ...

  2. ROS知识(5)----消息与服务的示例

    ROS中已经定义了较多的标准类型的消息,你可以用在这些标准类型的消息上再自定义自己的消息类型.这个在复杂数据传输很有用,例如节点和服务器进行交互时,就可能用到传输多个参数到服务器,并返回相应的结果.为 ...

  3. ROS知识(6)----基于Eclipse开发

    可以利用Eclipse集成开发环境进行ROS开发,从而提高研发效率.以色列巴尔伊兰大学的Mr. Roi Yehoshua开设了一门ROS课程,课程2( Lesson 2)讲解了如何利用Eclipse在 ...

  4. ROS知识(3)----功能包package编译的两种方式

    ROS的包编译有两种方法(我知道的),一种是用rosmake,这种方法简单:另一种是用catkin_make,这种方法更方便包的管理和开发.这两种方法都是先建立工作空间workspace(类似于vs下 ...

  5. ROS知识(24)——ros::spin()和spinOnce的含义及其区别

    1.ros::spin()和spinOnce含义 如果在节点中如果订阅了话题,那么就必须要调用ros::sping()或者ros::spinOnce()函数去处理话题绑定的回调函数,否则该节点将不会调 ...

  6. ROS知识(9)----NodeHandle命令空间问题

    一直被NodleHandle的构造函数的命名空间搞混淆了.例如: ros::NodeHandle node_private("~/"); ros::NodeHandle node_ ...

  7. ROS知识(4)----初级教程之常见问题汇总

    一.开机启动ROS的工作空间的路径设置失败 现象:在教程:http://wiki.ros.org/cn/ROS/Tutorials/CreatingPackage中的第5.1小节,运行以下命令失败: ...

  8. SLAM+语音机器人DIY系列:(二)ROS入门——1.ROS是什么

    摘要 ROS机器人操作系统在机器人应用领域很流行,依托代码开源和模块间协作等特性,给机器人开发者带来了很大的方便.我们的机器人“miiboo”中的大部分程序也采用ROS进行开发,所以本文就重点对ROS ...

  9. SLAM+语音机器人DIY系列:(二)ROS入门——2.ROS系统整体架构

    摘要 ROS机器人操作系统在机器人应用领域很流行,依托代码开源和模块间协作等特性,给机器人开发者带来了很大的方便.我们的机器人“miiboo”中的大部分程序也采用ROS进行开发,所以本文就重点对ROS ...

随机推荐

  1. Does Deep Learning Come from the Devil?

    Does Deep Learning Come from the Devil? Deep learning has revolutionized computer vision and natural ...

  2. UI渲染回顾简单笔记

    UI渲染的简单过程: CPU,GPU,显示器协同工作,CPU 中计算显示内容,比如视图的创建.布局计算.图片解码.文本绘制等,然后将计算结果提交给GPU,由 GPU 进行变换.合成.渲染.随后 GPU ...

  3. size属性

    size 属性 size 属性规定输入字段的尺寸(以字符计): <form action=""> First name:<br> <input typ ...

  4. Git常见错误处理

      如果输入$ Git remote add origin git@github.com:djqiang(github帐号名)/gitdemo(项目名).git  提示出错信息:fatal: remo ...

  5. Redis常见操作命令

    1.库相关 select 索引 => 选择库 dbsize => 查询当前库中Key的数量 flushdb => 清空当前库 flushall => 清空所有库(建议不要用,除 ...

  6. Paint House

    There are a row of n houses, each house can be painted with one of the k colors. The cost of paintin ...

  7. axios笔记

    参考:http://www.cnblogs.com/Upton/p/6180512.html https://cloud.tencent.com/developer/article/1098141  ...

  8. 删除MySQL binlog日志的方法

    对于比较繁忙的OLTP(在线事务处理)系统,由于每天生成日志量大,这些日志如果长时间不清除,将会对磁盘空间带来很大的浪费.因此,定期删除日志是DBA维护MySQL数据库的一个重要工作内容.下面跟大家分 ...

  9. 如何区分prometheus中Histogram和Summary类型的metrics?

    要理解它们的区别,关键还是告业务应用. 但如何在学习时,如何区分呢? 有以下几个维度: histogram有bucket,summary在quatile. summary分位数是客户端计算上报,his ...

  10. Serilog 记录日志

    Serilog 记录日志 Serilog是.net里面非常不错的记录日志的库,另外一个我认为比较好的Log库是NLog. 在我个人的asp.net web api 2 基础框架(Github地址)里, ...