【问题标题】:Objective-C Method CommentsObjective-C 方法评论
【发布时间】:2011-11-21 13:50:56
【问题描述】:

为 Objective-C 注释方法的正确方法是什么?例如,在 .Net 中,我会添加一个 xml 注释,例如:

/// <summary>
/// Summary of method
/// </summary>
/// <param name="FileName">The document's original filename.</param>  
/// <returns>Decoded filename</returns>  

Objective-C 是否有等价物?

【问题讨论】:

  • 感谢您的快速回复。我知道如何在代码中注释,但想知道是否有特定的格式来注释上述方法以解释该方法的作用。我希望能够单击方法实现并让它显示该方法的作用。能不能制作快速帮助中显示的cmets,比如填写摘要和返回值?
  • appledoc - Objective C API 文档生成器gentlebytes.com/home/appledocapp

标签: iphone objective-c xcode ipad comments


【解决方案1】:

不要忘记用于阻止代码的编译指示标记。它帮助 XCode 分离下拉列表中的方法。它还可以直观地分解您的源文件并使其更易于阅读。

以下是我阻止代码部分的方法:

///////////////////////////////////////////////////////////////////////////
#pragma mark -
#pragma mark View Lifecycle
#pragma mark -
///////////////////////////////////////////////////////////////////////////

- (void) functionsHere

它最终在 XCode 中执行此操作:

【讨论】:

  • 无需为此单独编写一行,只需一行即可。请参阅我的回答
  • 是的,但是我故意添加了额外的行,因此分解源文件是一个很大的障碍。除了获得下拉菜单之外,我还希望能够滚动文件并在视觉上看到它。
【解决方案2】:

有可以使用的 appledoc 标头文档,与 Apple 使用的相同。

对于单个方法,最好的指南是使用描述性很强的名称,这在 Objective-C 中相当容易,参数散布在方法名称中。这通常不需要单独的参数 cmets。

在任何语言中,描述性的方法名称和简短的单一用途方法都胜过随着代码变化而老化的冗长的 cmets。

【讨论】:

    【解决方案3】:

    您提到的评论风格似乎是文档生成器为您生成文档的那种风格。

    因此,对 Objective-c 的等效注释样式将取决于您选择的文档生成器。据我所知,没有默认的。

    如果您想要提供类似于 Apple 自己的开发人员文档的结果,您可以使用类似 Doxygenappledoc 的内容。 This page 详细说明了评论格式。示例:GBComment.h

    【讨论】:

    • 多线 cmets 等的 Doxygen 样式为 /** ... */
    【解决方案4】:

    我的做法是这样的,

    //-----------------------------------------------------------------------------------------------------//
    #pragma mark - Table view Datasource -
    //-----------------------------------------------------------------------------------------------------//
    

    【讨论】:

      【解决方案5】:
      /**
      *   @brief  set refresh datetime
      *
      *   @param  value of refresh datetime
      *
      *   @return
      *
      */
      

      这显示在快速帮助中

      认为

      【讨论】:

      • 这并没有提供问题的答案。要批评或要求作者澄清,请在他们的帖子下方发表评论 - 您可以随时评论自己的帖子,一旦您有足够的reputation,您就可以comment on any post
      • 我是中国人。英语很差,所以我不知道你是什么意思〜____批评或要求作者澄清
      【解决方案6】:

      你会使用

      //for a single line comment
      /*Use this for the start of a block comment
      */Use this for the end of a comment
         /*text text text;
         code code;
         code code code;//comment
         code;//comment
         code;*/
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-03-08
        • 2011-09-09
        • 1970-01-01
        • 2013-07-10
        • 1970-01-01
        • 2018-07-04
        • 2011-07-28
        • 2023-03-29
        相关资源
        最近更新 更多