在DocX中写重载函数的帮助

在DocX中写重载函数的帮助

许式伟
2006-12-23

 

今天,我发布了DocX的一个重要升级。这个升级主要解决了一直以来困扰我很久的函数重载(function overload)问题。

原先,DocX只支持在主题文档(.man文件)中书写同名函数的帮助,而.h/.cpp等中无法做到。但是主题文档是我准备逐步淘汰的写法。为此我设想过多种解决方案,但是都是因为需要对目前的程序做重大调整而作罢(由于本身属于探索性质的,而且写DocX那会我刚好对模板特别热衷,我认为过于技术化了。DocX重构是迟早的事)。

今天收到 wang carl 先生的一封信,在信中,他给DocX提了一些宝贵的意见,并且发了他写的一个有问题的DocX样例给我。在其中,他用到了DocX目前并不支持的语法。

他这个样例给了我很大的启发,我马上意识到,他给了我一个可以解决困扰我很久的函数重载问题的方案。我马上动手,把他写的语法给支持了。

大体的文法如下:

     /*
    @fn setUserInput(string)
    @brief
        设置用户输入
    @arg [in] input
        string, the expression of the user input
    @
*/
    
void  setUserInput( string  input);

    
/*
    @fn setUserInput(LPCSTR)
    @brief
        设置用户输入
    @arg [in] input
        string, the expression of the user input
    @
*/
    
void  setUserInput(LPCSTR input);

同时,构造函数也支持重载:

/*
@class Input
@brief
    用于可编程计算器的表式达处理
@
*/
class  Input
{
public :
    
/*
    @ctor()
    @brief
        构造函数,只将表达式清空
    @arg [in] chr
        char, the char which is to be checked
    @
*/
    Input();

    
/*
    @ctor(string)
    @brief
        构造函数
    @arg [in] input
        string, the expression of the user input
    @
*/
    Input(
string  input);
};

为了表示我的感谢,我把 wang carl 先生发给我的样例也附到发布包中作为样例提供了。参见:

对DocX感兴趣?您可以从以下链接下载:

关于DocX的一些背景,请参考:

下一步,DocX主要要解决以下问题:

  • Doxygen语法的兼容
  • 国际化,支持多种语言。

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 16
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值