我有这样的类定义:
class A Q_DECL_FINAL: public QThread
doxygen
解析不正确的问题!我在 doxygen
文档和图表中的类调用 Q_DECL_FINAL
。我该如何解决?
最佳答案
假设你有这个:
class MovableLabel Q_DECL_FINAL: public QLabel
要忽略 Q_DECL_FINAL
(在 doxygen
中),您应该使用 next:
class MovableLabel /** @cond */ Q_DECL_FINAL /** @endcond */: public QLabel
在这种情况下,您将在 doxygen
生成的文档中获得正确的类名,并在编译期间获得 Q_DECL_FINAL
的真实含义,因此 next 将无法运行:
class Der : MovableLabel //error
{
};
Q_DECL_FINAL
也不是 typedef
。它是这样的:
#ifdef Q_COMPILER_EXPLICIT_OVERRIDES
# define Q_DECL_OVERRIDE override
# define Q_DECL_FINAL final //here our keyword
#else
# ifndef Q_DECL_OVERRIDE
# define Q_DECL_OVERRIDE
# endif
# ifndef Q_DECL_FINAL
# define Q_DECL_FINAL //just nothing, if c++11 not enabled
# endif
#endif
Q_COMPILER_EXPLICIT_OVERRIDES
是:
# if __has_feature(cxx_override_control)
# define Q_COMPILER_EXPLICIT_OVERRIDES
# endif
关于c++ - Doxygen 与 Qt 定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32051541/