Rust中///三斜杠和//双斜杠注释的区别

///// 都是 Rust 中用于添加注释的语法,但它们的用途和功能有所不同。

1. ///(文档注释)

  • 用途: 用于生成文档的注释。
  • 位置: 通常放在函数、结构体、枚举、模块等的定义之前。
  • 效果: 使用 rustdoc 工具时,/// 注释会被提取并生成文档。这些注释还可以在 IDE 中显示为工具提示。
  • 格式: 文档注释通常使用 Markdown 格式,这意味着你可以在其中添加标题、列表、代码块等。 示例:
  /// This function adds two numbers together.
  ///
  /// # Examples
  ///
  /// ```
  /// let result = add(2, 3);
  /// assert_eq!(result, 5);
  /// ```
  pub fn add(a: i32, b: i32) -> i32 {
      a + b
  }

在上面的例子中,rustdoc 会将 /// 注释提取并生成 HTML 文档。示例中的代码块也会显示在文档中。

2. //(普通注释)

  • 用途: 用于在代码中添加普通注释。
  • 位置: 可以放在代码的任何地方,单行或多行。
  • 效果: 这些注释仅供开发者阅读,并不会出现在生成的文档中。
  • 格式: 普通注释不使用 Markdown 格式,通常是简短的解释或备注。 示例:
  // This is a simple addition function.
  pub fn add(a: i32, b: i32) -> i32 {
      // Add the two numbers and return the result.
      a + b
  }

在上面的例子中,// 注释只是对代码的一些解释,不会出现在生成的文档中。

总结

  • ///: 用于生成文档的注释,会被 rustdoc 提取,并且支持 Markdown 格式。
  • //: 普通的代码注释,只供开发者阅读,不会出现在生成的文档中。

两者的主要区别在于用途和功能。/// 用于生成用户可见的文档,而 // 只是代码中的备注或说明。

Translate »