3.1.16 函数的副作用

来源:互联网 发布:php源码分享 编辑:程序博客网 时间:2024/05/20 03:41

对于命令式语言,在函数中可以做除了处理参数外的许多操作,许多操作可以直接改变整个系统的状态,这被称作函数的副作用。对于命令式编程这本是习以为常的事情,但在函数式编程风格眼中副作用可能会导致程序逻辑的混乱。

 

         在代码中不能简单的根据函数名判断他们所做的操作:

         msg_error、msg_panic、msg_fatal等信息显示函数除了打印出错信息外会导致程序会立即退出。

         vstream_fseek函数除了移动了文件指针,还调用vstream_fflush_some进行了写数据操作。

         smtpd_chat_reply函数更是要在简单的给客户端返回信息外做大量的其他处理工作,见3.8.2节。

0 0