我刚刚在我们正在处理的一些代码中挖出了一个错误*由于以下情况而失败:
Assert(SomeVitalFunction(foo) == OK)
DEBUG宏#defined一直都很好用:
#ifdef DEBUG #define Assert(x) if((x) == 0){/*some error handling*/} #else #define Assert(x) #endif
但是当我们#undef’d DEBUG时,它具有从代码中删除重要函数调用的效果.
我不能为我的生活弄清楚如何使用DEBUG#undef’d,并且通常在这样的断言中放置任何类型的函数调用似乎是个坏主意.
我错过了什么吗?
* =编辑以澄清以下Carpetsmoker的评论:代码来自一个特别落后的Elbonian代码奴隶的阴谋,我们的任务是破解,削减,刮胡子,擦亮,消毒和涂抹口红.
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。