PCL学习笔记(二)、PCL编码风格

一、PCL命名规范

1、文件命名

所有的文件名单词之间应该用下划线隔开

2、目录命名

所有的目录及其子目录命名时,如果有多个单词组成。其之间用下划线隔开。

3.include语句:

当文件在同一目录下时include指示语句用双引号,在其他情况下则用尖括号。

    #include <pcl/io/pcd_io.h>
    #include <pcl/io/ply_io.h>
    #include "file_name.cpp"

4.宏定义命名:

宏定义中所有字母采用大写格式,为头文件所定义的宏最后面还需要加上下划线,并且所有名称从include下目录开始,#ifndef和#define放在代码前面,#endif放在文件结尾,并且加上一句注释的宏对应头文件的宏定义。

5.命名空间的命名:

命名空间多于一个单词的,应该在单词中间加上下划线。

6.类/结构体命名:

使用驼峰命名规范,也就是连写单词组成命名,每个单词首字母大写,但如包含缩写应该全部大写,并且最好使用名词组成名字。如: class ExampleClass;

7.函数/成员函数命名:

命名也采用驼峰命名规范,但除了首单词首字母小写,其他单词首字母均采用大写,并且参数命名应该用下划线隔开,函数和成员函数命名最好采用动词,并确保命名能体现函数的功能。例如:

    int
    applyExample(int example_arg)

8.变量命名:

单词之间应该用下划线隔开,如果是成员变量最后要以下划线结尾。

    int my_variable;//变量
    int example_list_;//成员变量

9.常量命名:

常量的名字应该是全部大写,例如const static int MY_VARIABLE=100;

10.return语句:

规定return语句必须有返回值,但是没有返回值也就可以编译通过。

二、PCL推荐的缩进与格式

1.命名空间缩进格式

在头文件里,命名空间的内容应该缩进两个空格.

    namespace pcl
    {
    class Foo//缩进两个字符
        {
       };
    }

在一个实现文件里,对每一个类成员函数或者函数的命名必须添加命名空间限定

    void
    pcl::Foo::bar()//带上命名空间限定pcl
    {
      ...
    }

2.类格式

一个模板类的模板参数必须与类定义在不同行,例如:

    template<typename T>//不同行
    class Foo
    {
      ...
    }

3.函数/类成员函数格式

每一个函数的返回类型声明必须与函数声明放在不同行,例如:

    void//不同行
    bar();

在函数实现的时候也是一样,返回类型声明必须与函数声明放在不同行。

    void//不同行
    pcl::Foo::bar()
    {
      ...
    }

4.花括号

花括号成对出现,另起一行定义,必须闭合才能组成合理的程序块,但也可以省略。

    if(a<b)
    {
      ...
    }
    else
    {
      ...
    }

5.空格格式

在PCL中的每一个代码块的标准缩进是两个空格,这里用单个空格来隔开函数/类成员函数名字与其参数列表

    int
    exampleMethod (int examply_arg);

如果在头文件内嵌套应用了命名空间名,需要将其缩进两个空格,例如:

    namespace foo
    {
    namespace bar//缩进两个空格
        {
    void//缩进两个空格
    method (int my_var)//缩进两个空格
        }
    }

类和结构成员采用两个空格进行缩进,访问限定(public,private)与类成员一级,而在其限定下的成员,这需要缩进两个空格。例如:

    namespace foo
    {
    class Bar//缩进两个字符
      {
    int i;//缩进两个字符
    public:
    int j;//缩进两个字符
    protected:
    void//缩进两个字符
    baz (); //缩进两个字符
      }
    }
————————————————
版权声明:本文为CSDN博主「o180o」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/o180o/article/details/90488544

posted @ 2022-03-05 14:40  楸壳  阅读(327)  评论(0编辑  收藏  举报