由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - 使用assert应遵循什么原则?
相关主题
C++的exception大家常用吗?[合集] 谁能知道这是为什么?C++问题
问个简单的数值赋值问题newbie python question
c++ define 一问Help - C++ Debug Assertion Failed
perl:里有象 c assert 的东西吗?Sun的compiler貌似很弱啊
有人export class from a dll 吗?问一个奇怪的问题。
Debug Assertion Failedwhat is the diff between release build and debug build?
A question about Debugging[合集] 为什么10进制输出是负的?
Microsoft Visual studio 2005 professional 版本和standard版本的区别一个C#似疑模板问题
相关话题的讨论汇总
话题: assert话题: 遵循话题: 程序话题: 崩溃话题: 原则
进入Programming版参与讨论
1 (共1页)
q****x
发帖数: 7404
1
比如下面这个:
void foo(int* p) {
assert(p != nullptr);
*p = 100;
}
这里有没有assert都没区别吧?程序总是要崩溃的。
另外加assert使得binary崩溃似乎也不是什么好办法。
g*********e
发帖数: 14401
2
取决与你写哪种程序。桌面程序可以用assert 出错就退出。
如果c的话有种做法是debuf build加assert, release build为了性能考虑关掉assert。
webservice不能跨,你去网络公司面试说用assert检查错误, 直接pass
g*********e
发帖数: 14401
3
你这里加assert的好处是可以知道哪里出错了,不然程序有可能再跑很久才垮
q****x
发帖数: 7404
4
直接给地址0赋值,立马segmentation fault吧。

【在 g*********e 的大作中提到】
: 你这里加assert的好处是可以知道哪里出错了,不然程序有可能再跑很久才垮
l*********s
发帖数: 5409
5
assertion is for programmers to catch logic bugs.
g*********e
发帖数: 14401
6
但实际中那个指针不一定马上被用到

【在 q****x 的大作中提到】
: 直接给地址0赋值,立马segmentation fault吧。
1 (共1页)
进入Programming版参与讨论
相关主题
一个C#似疑模板问题有人export class from a dll 吗?
说起来上次谁推荐的memmove作面试题来着Debug Assertion Failed
请叫一个 template class constructor 的问题A question about Debugging
请问strcpy()和memcpy()的写法问题  (转载)Microsoft Visual studio 2005 professional 版本和standard版本的区别
C++的exception大家常用吗?[合集] 谁能知道这是为什么?C++问题
问个简单的数值赋值问题newbie python question
c++ define 一问Help - C++ Debug Assertion Failed
perl:里有象 c assert 的东西吗?Sun的compiler貌似很弱啊
相关话题的讨论汇总
话题: assert话题: 遵循话题: 程序话题: 崩溃话题: 原则