这篇回答以及它的许多副本表明,在C++代码中,我应该使用#include <c*>引入C头文件,并且我应该使用std::*来调用它们。 我一直在这样做,但是我注意到一个例外情况。即使我正确地#include <cassert>,std::assert似乎没有被定义。 这是怎么回事?这是实现上的疏忽还是真正的例外情况?
assert 是一个宏而不是函数,因此需要使用纯粹的 assert(condition)。 这里有一个支持链接:http://en.cppreference.com/w/cpp/error/assert。
assert
是一个宏(macro),具体细节可参考链接:http://en.cppreference.com/w/cpp/error/assert 。 - smac89