C++编码规范(16)

2021-01-20 15:19

规范级别:建议 规则描述:

函数调用语句中,在函数的参数列表中不要使用赋值操作符。赋值操作符包括=, +=, -=, *=, /=, %=, >>=, <<=, &=, |=, ^=,++,--。 理由:

避免产生不明确的赋值顺序。 举例:

// 不要象下面这样写代码: void fun1(int a); void fun2(int b) {

fun1(++b); //注意这里!

}

2.5.7 保护可重入函数中的全局变量

规范级别:规则 规则描述:

编写可重入函数时,若操作全局变量,则应加以保护。

举例:

如果全局变量不加以保护,当多个线程调用此函数时,很可能使此变量

变为不可知状态。

例如:假设 Exam是int型全局变量,函数Squre_Exam返回Exam平方值,

如下函数不具有可重入性。

Unsigned int example (int para) {

unsigned int temp; Exam = para;

temp = Square_Exam();

return temp; }

此函数若被多个线程调用,Exam可能成为未知的。

可改为如下方式:

Unsigned int example (int para)

{

unsigned int temp;

[申请信号量操作] Exam = para; temp = Square_Exam();

[释放信号量操作] return temp;

}

2.6类


C++编码规范(16).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:中职生物学实验教学与学生创新能力的培养

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: