Chinaunix首页 | 论坛 | 博客
  • 博客访问: 9139
  • 博文数量: 22
  • 博客积分: 10
  • 博客等级: 民兵
  • 技术积分: 125
  • 用 户 组: 普通用户
  • 注册时间: 2012-12-04 07:52
文章分类
文章存档

2012年(22)

我的朋友
最近访客

分类:

2012-12-04 07:53:14

6 函数与过程

6.1 函数的功能与规模设计

函数应当短而精美,而且只做一件事。不要设计多用途面面俱到的函数,多功能集于一身的函数,很可能使函数的理解、测试、维护等变得困难。

6.2 函数的返回值

(1)对于函数的返回位置,尽量保持单一性,即一个函数尽量做到只有一个返回位置。(单入口单出口)。

要求大家统一函数的返回值,所有的函数的返回值都将以编码的方式返回。

例如编码定义如下:

#define CM_POINT_IS_NULL CMMAKEHR(0X200)

:

:

参考函数实现如下:

LONG 函数名(参数,……)

{

LONG lResult; //保持错误号

lResult=CM_OK;

//如果参数有错误则返回错误号

if(参数==NULL)

{

lResult=CM_POINT_IS_NULL;

goto END;

}

……

END:

return lResult;

}

调用者对所调用函数的错误返回码要仔细、全面地处理

6.3 变量的使用

当你确实需要时才用全局变量,函数间应尽可能使用参数、返回值传递消息。

6.4 函数参数

在同一项目组应明确规定对接口函数参数的合法性检查

(1)防止将函数的参数作为工作变量。将函数的参数作为工作变量,有可能错误地改变参数内容,所以很危险。对必须改变的参数,最好先用局部变量代之,最后再将该局部变量的内容赋给该参数。

(2)避免设计多参数函数,不使用的参数从接口中去掉,目的减少函数间接口的复杂度。

阅读(110) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~