C++编码规范中的可靠性原则是确保代码的可读性、可维护性和稳定性,以下是几个小点及其例子:
避免使用全局变量:
如果需要多个变量在全局范围内使用,可用context(结构体/类)解决耦合性问题
// 不推荐的写法:使用全局变量,提高了函数耦合度,和代码维护难度
int globalVar = 10;// 推荐的写法:在合适的作用域内使用局部变量
void function() {int localVar = 5;// 使用局部变量 localVar
}
//context
struct context{int localVal = 5;..
}
context *ctx = new contex(...);
//A.cpp
void setx(context *ctx){ctx->localVar=0;
}
//B.cpp
void setxb(context *ctx){ctx->localVar=1;
}
使用 const 关键字而不是直接写数字:
// 不推荐的写法:直接写数字
int maxSize = 100;// 推荐的写法:使用 const 关键字定义常量
const int MAX_SIZE = 100;
使用 const 定义常量而不是宏定义:
// 不推荐的写法:使用宏定义
#define MAX_SIZE 100// 推荐的写法:使用 const 关键字定义常量
const int MAX_SIZE = 100;
使用 static 限定范围:
//A.cpp
static void function() {...
}
void function2(){...
}
//B.cpp
void Func(){function2();function();//链接出错,function的有效范围仅仅在A.cpp
}
宏定义表达式括号要完备:
// 不完备的宏定义,a+b,c+d 会展开成a+b*c+d
#define SQUARE(x,y) x * y// 完备的宏定义
#define SQUARE(x) ((x) * (x))
变量引用前要赋值:
int a;
int& ref = a; // 不安全,未初始化的引用int b = 5;
int& ref = b; // 正确,引用前已经赋值
遵循这些可靠性原则可以帮助编写更加稳定、易读和易维护的