看了google编码规范,做了一些整理与示例。
文件名、变量名: 小写 可拼接 “_”“-”。
类名、函数名、常量: 首字母大写。
宏、枚举: 全大写。
myclassfile.h
//1.文件名 小写 有_线或者- 与类名对应
myclassfile.cpp
my_class_file.cpp
myclassfile.h
//2.类名 单词以大写字母开头
class MyClassFile:public BasicClass //
{
//1 常量 以k开头全单词
const int kDaysInAWeek=7;
//2 构造函数 析构函数
public:
MyClassFile();
explicit MyClassFile(int var);
~MyClassFile();
//3.成员函数 单词以大写字母开头
void Foo();
void Foo(const string &text);
void Foo(const string &in,string *out);//输入引用加上const,输出
int ErrorNum() const{return error_nums_;}
//4 成员变量:全小写,_下划线结尾
private:
string table_name_str_;
string errorname_;
int error_nums_;
list alarm_lists_; // 类型放在词尾
CTime start_time_;
unordered_map table_name_map_;
};
myclassfile.cpp
myfilename.cpp
//1.宏 全大写 有_线
#define PI_ROUNDE 3.0
//2.包含头文件 C文件 C++文件 其它
#include "foo/myclassfile.h"
//c
#include <sys/types.h>
#include <unistd.h>
//c++
#include <hash_map>
#include <vector>
//其它
#include <base/basicclass.h>
MyClassFile::MyClassFile(){
}
//3.函数
void MyClassFile::Foo()
{
//常量声明与初始化
const char KFrogSays[]="helloworld";
//4. 变量声明和初始化在一行
//强制类型转换 内建变量static_cast<>
int a = 8;
int b = 3;
double result = static_cast<double>(a) / static_cast<double>(b);
//dynamic_cast 子类->父类
BasicClass *pbasicclass;
MyClassFile *pmyclassfile;
pmyclassfile=dynamic_cast(pbasicclass);
//5.条件语句
if(){
}else{
}
switch(i){
case 1:
...
case 2:break;
}
}