美文网首页
包裹函数

包裹函数

作者: 戴宏鹏 | 来源:发表于2018-05-15 16:09 被阅读0次

    对于“包裹函数”UNP给出的解释是:

    既然发生错误时终止程序的运行是普遍的情况,我们可以通过定义包裹函数(wrapper function)来缩短程序。每个包裹函数完成实际的函数调用,检查返回值,并在发生错误时终止进程。我们约定包裹函数名是实际函数名的首字母大写形式。

    对于这个包裹函数,理解是:
    自己封装一个函数,这个函数的参数和要引用的函数是一样的,但是在要引用的函数的基础上加入了错误判断的功能。

    书中给出的例子是:

    int Socket(int family,int type,int protocol)
    {
        int n;
        if((n = socket(family,type,protocol)) < 0)
            err_sys("socket error");
        return (n);
    }
    
    

    这样一来,以后我们再要调用socket函数时,可以直接使用我们自己封装的包裹函数Socket(),好处是不用每次调用都要对是否socket成功做判断了。

    相关文章

      网友评论

          本文标题:包裹函数

          本文链接:https://www.haomeiwen.com/subject/vccydftx.html