首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

为什么许多实际的项目里都不如何检测函数参数

2012-03-22 
为什么许多实际的项目里都不怎么检测函数参数?我看到一些书里说一定要检测函数参数云云,无论是用断言还是

为什么许多实际的项目里都不怎么检测函数参数?
我看到一些书里说一定要检测函数参数云云,无论是用断言还是例外,总之是要检测。按照这个说法,那么那些指针,常量引用的参数不都要一个个的检查是否为NULL或非法值么?可是这种情况并没有出现在我看到的一些实际项目(成功项目)的代码里,这些代码都不怎么检查这些东西,断言用的也不多。我到底要听谁的呢?


[解决办法]
参数检测是一个繁琐的事情,所以很多项目中确实不太检测。而且考虑到效率,本着谁调用函数、谁检查参数的精神,一般也不会出什么问题。但对参数进行检测,抛出异常或断言应该是个好的编程风格。
[解决办法]
楼上说的正解,一般参数是谁调用谁检查的。
[解决办法]
assert 宏可以在构建时很方便被关闭,不使用 assert 宏检查编程性的参数合法性是不应该的。
[解决办法]
不检查估计是因为写代码的人严谨性不够
一般是在写的时候注意力放在实现上面,很少或者没有考虑到严谨性的问题
[解决办法]
自己的函数自己调用,所以一般不那么严格的校验参数,加入是给别人调用的,就应该多几个心眼了
[解决办法]
只要在模块边界,对参数检测一次就可以了。
[解决办法]
assert 还是应该用的.

我现在做一个项目,用其他公司的库.
源代码不全, 跟踪几个内存错误好几天了,人都要爆炸了,
要是有断言, 我至于这么辛苦吗。 哎.
[解决办法]
用assert,这个东西在release模式下,就是空语句,不会给应用程序带来任何负担的。
[解决办法]
经常编译检错就容易些.

热点排行