宏中的Doxygen注释

Doxygen comment inside a macro

本文关键字:注释 Doxygen      更新时间:2023-10-16

我的问题如下:我有一组构造函数参数相同的文件。我在每个文件中使用的宏中定义了构造函数的参数。例如,以下构造函数:

Planar(BSPF_IMAGE_FORMAT_STD_CONST_PARAMS_3);

使用BSPF_IMAGE_FORMAT_STD_CONST_PARAMS_3宏,该宏扩展平面构造函数的参数:

#define BSPF_IMAGE_FORMAT_STD_CONST_PARAMS_3                                
  size_t height,                                                            
  size_t width,                                                             
  size_t stride,                                                            
  size_t effectiveChannels,                                                 
  BSPF_UTILS::bspf_8u* buffer

我的问题如下:我希望所有使用相同宏的构造函数都有相同的Doxygen文档,换句话说,我只想为共享同一宏的构造函数编写一次文档)。

我该怎么做?

我试着写一个宏(使用参数的构造函数名称),但它不起作用,因为Doxygen在没有换行的情况下扩展了宏。

这样做有好的方式吗?

谢谢你的回答。

宏总是在没有换行的情况下展开,这与doxygen无关。然而,解决方案相对简单:

有一个额外的文本文件("BSPF_IMAGE_FORMAT_STD_CONST_PARAMS_3.txt"或类似文件),其中包含特定于该定义的注释,一个额外

#define BSPF_IMAGE_FORMAT_STD_CONST_PARAMS_3_INCLUDE  
    "BSPF_IMAGE_FORMAT_STD_CONST_PARAMS_3.txt"

并最终以以下方式使用它:

// your .cpp
#include BSPF_IMAGE_FORMAT_STD_CONST_PARAMS_3_INCLUDE
Planaer::Planar(BSPF_IMAGE_FORMAT_STD_CONST_PARAMS_3){
}

include只需将.txt的内容复制并粘贴到.cpp中即可。