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

}
posted @ 2018-08-05 20:46  会吃鱼的鱼  阅读(490)  评论(0编辑  收藏  举报