This answer并且它的大量重复表明我应该使用#include <c*>
作为我在C ++代码中提取的C标头,并且我应该用{{{{}}调用它们1}}。
我一直这样做,但我注意到一个例外。 std::*
似乎无法定义,即使我正确std::assert
。
这里发生了什么?这是实施疏忽还是实际例外?
答案 0 :(得分:15)
assert
是一个宏,而不是一个函数。因此,它需要与普通的assert(condition)
一起使用。
答案 1 :(得分:11)
assert
是一个宏,因此无法将其限制为命名空间。