【发布时间】:2011-01-06 13:03:41
【问题描述】:
我们在代码中有经常重复出现的行来检查函数的返回状态,如果失败则立即返回状态。我想为此定义一个宏:
#define RETURN_IF_FAILED(x) { int stat = (x); if (FAILED(stat)) return stat; }
局部变量是因为参数x可能是函数调用。
据我所知,使用宏有一些奇怪的伪影,而且我对它们不是很精通,所以我想问一下您是否发现这个宏有任何问题。谢谢。
(请不要建议使用例外 - 我自己也讨厌这种风格,但这里就是这样)
【问题讨论】:
标签: c++ macros error-handling