C++入职学习篇--代码规范(持续更新)

C++入职学习篇--代码规范(持续更新)

一、头文件规范

在头文件中大家一般会定义宏、引入库函数、声明、定义全局变量等,在设计时最后进行分类,代码示范(自己瞎琢磨的,请多多指点):

#ifndef TEXT_H
#define TEXT_H
//------------------------------------------------
#include <string>
#include <stdio.h>
//------------------------------------------------
#include "picture,h"
#include "work.h"
//------------------------------------------------  
//your code
//------------------------------------------------
#endif /* endif TEXT_H */

最好将宏定义、标准库、自定义库分开,这样更清晰、便于读者阅读

二、类定义规范

在定义类时public、private、protected都需要写出来,即使没有内容,代码示例:

class TText() //命名类以T开头
{
public:
    //------------------------------------------------
    //your code
    String GetName(void);//命名对外函数用首字母大写
    //------------------------------------------------
private:
    //------------------------------------------------
    //your code
    String sname;//命名变量首字母为类型首字母
    String _usr_path_name(String filename);//命名私有成员函数以_开头
    //------------------------------------------------
protected:
    //------------------------------------------------
    //your code
    //------------------------------------------------
};

三、部分注释为了整体代码规范,需要在必要的时候添加

如果在一个场景中引用的四个工具类A、B、C、D,其他分析均对其四个分别分析,但是有一种情况仅需对其一分析,那就需要用注释分析其他三种,为了就是代码美观与整体性好。代码示例:

bool isopen(mode type){
    if(type == A->mode){
        project->mode = A->mode;
        return true;
    }

    /*
    if(type == B->mode){
        project->mode = B->mode;
        return true;
    }*/

    /*if(type == C->mode){
        project->mode = C->mode;
        return true;
    }*/
    
    /*if(type == D->mode){
        project->mode = D->mode;
        return true;
    }*/
    
    
}

这样整体美观,便于读者分析

四、函数中代码规范

int textmain(char * filename) {
    //----------------------------  
    int err;
    char * buffer = new buffer[1024];
    //----------------------------
    FILE *pf;
    pf = fopen(filename,"rb+");
    //----------------------------
    /* 注释的引用便于读者阅读,不用过多注释,但要有助于
        理解程序段 */
    //----------------------------
    if(pf == NULL) {
        cout<<"Open file fail"<<endl;
        fcolse(pf);
        err = -1;
    }
    //----------------------------  
    fcolse(pf);
    //----------------------------
}

//------------------------------------------------

五、关于结构体struct 枚举enum的命名

结构体(struct)

typedef struct{
    char cname[100];
    int inum;
    bool Check;
}STRU_USER_NAME;

枚举(enum)

typedef enum{
    EUN_ONE_ITEM = 0,EUN_TWO_ITEM,..,EUN_UNKNOW = 0xFFFF
}EM_USER_NAME;

六、定义宏

如果程序中多处出现相同程序段,可将这样的程序段定义为宏进行调用

eg:
#define M_CHECK_INPUT_VALUE_INT(input_value) \
    if(input_value[0] == '\0' || !input_value){ \
        ShowMessage("Input value is empty!");
        turn -1;        
    }

int main(){
const char a = "text";
M_CHECK_INPUT_VALUE_INT(input_value);
const char b = a;
cout<<"b:"<<b<<endl;        
return 0

}

转载于:https://www.cnblogs.com/yuanchenghao/p/9427098.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值