Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Swift标准文件注释_Swift - Fatal编程技术网

Swift标准文件注释

Swift标准文件注释,swift,Swift,是否有用Swift语言编写文档注释的标准方法?与javadoc(Java)或docstrings(Python)等价的东西 例如: /** * My docstring example * @return the String "foo" */ func foo() -> String { return "Foo" } 有 Swift包括“//”注释处理(尽管可能还不是全部) 写一些类似于: /// Hey! func bof(a: Int) { } 然后点击函数名,瞧:

是否有用Swift语言编写文档注释的标准方法?与javadoc(Java)或docstrings(Python)等价的东西

例如:

/**
 * My docstring example
 * @return the String "foo"
*/
func foo() -> String {
    return "Foo"
}

Swift包括“//”注释处理(尽管可能还不是全部)

写一些类似于:

/// Hey!
func bof(a: Int) {

}

然后点击函数名,瞧:)

我相信苹果还在修改语法。看起来所有的@keywords都没有在Xcode 6b2中实现,但在其他方面它与ObjC相同

因此,类似于你所拥有的东西会起作用:

/**
 * I am a function.
 */
func randomFn() {}
尽管Swift似乎停止对齐
*
s。当然,除了第一个和最后一个,你并不需要星星,所以你可以这样做:

/*
  I am a function.
 */
func randomFn() {}
这两个函数都将被注释解析器拾取,因此当您用3个手指单击函数名时,您将看到它的文档


@param、@return适用于beta1,但不适用于beta2,这些关键字在beta1中会使解析器大量崩溃,这表明苹果尚未完成这些功能的实现。

编辑:此解决方案不适用于Swift 2.0

旧的解决方案在swift 1.2之前仍有效:
我现在正在试用swift语言和文档工具。 Xcode对文本缩进非常敏感。关键字必须从同一位置开始。 关键字必须插入冒号,例如“:returns:” 如果xcode无法识别关键字,则xcode会将文本放入描述中

由此:

    /**
    Keresés után le lehet kérdezni egy konkrét találatot, pl. ha a harmadikra vagyunk mondjuk kíváncsiak.

    :note: n-1 legyen az \p index értéke, mert tömb révén a 0. elemmel keződik a tömb.
    :param: aSearchName Keresés meghatározásánál megadott név.
    :returns:               Konkrét találat. Ha nincs találat, akkor üres stringgel tér vissza a függvégy.
    :pre:               `aSearchName` != nil && !\p aSearchName != ""
    */
它将是:


您可以在此处看到实际的文档标准:

例如:

/**
    Lorem ipsum dolor sit amet.

    - parameter bar: Consectetur adipisicing elit.

    - returns: Sed do eiusmod tempor.
*/

这对我很有用。Xcode 7.2有两种类型的文档注释单行“//…”和多行“/**…*/”文档

从网站复制的示例代码:

/**
    Repeats a string `times` times.

    - Parameter str:   The string to repeat.
    - Parameter times: The number of times to repeat `str`.

    - Throws: `MyError.InvalidTimes` if the `times` parameter 
      is less than zero.

    - Returns: A new string with `str` repeated `times` times.
*/

func repeatString(str: String, times: Int) throws -> String {
    guard times >= 0 else { throw MyError.InvalidTimes }
    return Repeat(count: 5, repeatedValue: "Hello").joinWithSeparator("")
}

这是部分答案<代码>/***/不起作用。关键词,如
:param:
:returns:
确实有效,但在
//
内部,正如Jean Le Moignan在下面提到的。从
/***
开始,而不是
/*
.Hm,它对我有效。我用真实的源代码创建了一个屏幕截图。非常重要的是,每行缩进都像“/**”一样!!!这是非常重要的一点。您必须使所有内容在相同的缩进级别上对齐。当缩进处于一个级别时,它会起作用。我倾向于删除
:注意:
:pre:
,因为这些都是无法识别的关键字。您还可以使用
:foo:
:bar:
。这是正确的答案。费伦茨·基斯在上面给出了部分答案。关键字,如
:param:
:returns:
执行工作,但在
//
内部。请参阅可能的重复项,这是正确答案。上面那张琴的已经过时了。