频道栏目
首页 > 资讯 > 设计模式 > 正文

规范的函数应该如何编写

16-01-07        来源:[db:作者]  
收藏   我要投稿

每个函数指完成单一的功能。单一功能的函数容易理解,容易测试,也容易预测其行为。给已输入,就能知道其输出。

在设计的时候,将函数分为:查询和命令。

查询函数:仅仅查询对象的状态,而不改变对象的状态。比如dist_length.指返回双向链表的长度。 命令函数:只修改对象的状态,而不返回对象的状态。比如:dist_delete只删除链表的结点,并返回其操作是否成功,而不返回当前的长度或者结点是否存在。

查询分为:基本查询和复合查询。

基本查询:只查对象的单一状态。 复合查询:可以查询对象的多个状态。

比如:window_get_width()或者窗口的宽度,window_get_rect()获得窗口的左上角,宽度和高度。

在实现的时候,检验输入数据,确认使用者正确的调用了函数。契约式设计,规定了调用者和实现者,双方的责任。

检查你的函数

关注语法错误,代码排版和变量命名。 关注常见的编译错误,比如内存泄露,和可能的越界访问。变量没有初始化,函数没有返回值,没有判断函数返回值。 模拟计算机执行。看执行结束是否和预期一样。 自己先给自己讲一遍程序的实现流程。看流程是否自己能理解。

需要检查那些错误

内存泄露 内存访问越界 野指针 访问空指针 引用未初始化的变量 不清楚指针运算 初始化结构引发的错误 结构大小引起的变化 分配和释放不匹配 返回指向临时变量的指针 试图修改常量全局变量和字符串 误解传值和引用 符号重名 栈溢出 误用sizeof 字节对齐 字节顺序 多线程共享变量没有用volitile修饰 忘记函数的返回值.
相关TAG标签
上一篇:实战 php调用java类由java类读数据库完成相关操作(Inber Write)
下一篇:生成不重复的随机数的思路
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站