战地1头像显示国旗:[收藏]C++ Tips(4)--参数的检查 - 心如止水--coofucoo的专栏

来源:百度文库 编辑:偶看新闻 时间:2024/05/02 05:02:56
[收藏]C++ Tips(4)--参数的检查 /*这一系列文章《C++ Tips》是公司Code Committee专家会推荐工程师看的,感觉很好,拿出来与大家共同提高。并不是知道多少会使人与人产生差别,真正的差别在于你能做到多少。--coofucoo*/对函数的输入参数进行适当的检查
经常会有这样的程序:
foo(char* str)
{
    int len = strlen(str);
    ……
}
char* GetUserName(struct user* pUser)
{
    return pUser->name;
}
No!Please don’t do like that!。你应该先判断一下传进来的那个指针是不是为空(NULL)。如果传进来的指针为空的话,那么,你的一个大的系统就会因为这一个小的函数而崩溃。一种更好的技术是使用断言(assert)。当然,如果是在C++中,使用引用要比指针好得多,但你也需要对各个参数进行检查。写有参数的函数时,首要工作,就是要对传进来的所有参数进行合法性检查。而对于传出的参数也应该进行检查,这个动作当然应该在函数的外部,也就是说,调用完一个函数后,应该对其传出的值进行检查。当然,检查会浪费一点时间,但为了整个系统不至于出现“非法操作”或是“Core Dump”的系统级的错误,多花这点时间还是很值得的。


本文引用通告地址: http://blog.csdn.net/coofucoo/services/trackbacks/480988.aspx
[点击此处收藏本文] 发表于 2005年09月14日 11:22 PM