是否可以忽略doxygen生成的参考图中的`assert`?

时间:2015-01-10 10:24:07

标签: c doxygen

在我的代码中,有一些assert调用以确保我的函数正常工作,并对数据结构进行一些不变测试。

有时我在assert的参数中使用函数,然后这个函数在该函数的Doxygens调用图中。对于一些更大的不变测试,这实际上是对图表进行了调查...

如何避免调用图中出现以下代码段中的list_isSorted

int list_isElem (List l, Element e) {
  assert(list_isSorted(l));
  {
    if (list_isEmpty(l)) { return 0; }
    switch (compare(e, list_getValue(l))) {
    case -1: return 0;
    case  0: return 1;
    case  1: return list_isElem (list_getTail(l), e);
    default: exit(ERR_UNKNOWN);
    }
  }
}

我已经尝试在Doxyfile中设置PREDEFINED = NDEBUG,但这不起作用。

1 个答案:

答案 0 :(得分:1)

刚跳过断言?

见hhttp://www.doxygen.nl/manual/faq.html

"新的最简单的方法是在开头添加一个带有\ cond命令的注释块,用一个\ endcond"

添加一个注释块

使用宏自动化它:

#define DAssert(x) /** \cond */ assert(x) /** \endcond */