rust注释

一、普通注释

复制代码
// 这是第一种注释方式

/* 这是第二种注释方式 */
/*
多行注释
多行注释
多行注释
 */

二、文档注释

复制代码
///外部行文档注释。为接下来的项生成帮助文档
//! 内部行文档注释。为注释所属于的项生成帮助文档

/**...*/外部块文档注释。为接下来的项生成帮助文档
/*!...*/内部块文档注释。为注释所属于的项生成帮助文档

实例

复制代码
/// Adds one to the number given.
///
/// # Examples
///
/// ```
/// let x = add(1, 2);
///
/// ```
fn add(a: i32, b: i32) -> i32 {
    return a + b;
}
fn main() {
    println!("{}",add(2,3));
}

用 cargo doc 构建文档到 target/doc。注释转换成HTML格式的说明文档。

用 cargo test --doc 仅运行文档测试。

这些命令最终会调用 rustdoc。

三、文档属性

下面是一些最常使用的 #doc 属性

1.inline

用于内联文档,而不是链接到单独的页面。

例子

复制代码
#[doc(inline)]
pub use bar::Bar;
/// bar的文档
mod bar {
     /// Bar的文档
     pub struct Bar;
} 

2.no_inline

用于防止链接到单独的页面或其他位置。

例子

复制代码
#[doc(no_inline)]
pub use crate::mem::drop; 

3.hidden

使用此属性来告诉 rustdoc 不要包含此项到文档中:

例子

复制代码
#[doc(hidden)]
pub use self::async_await::*;
相关推荐
星栈15 小时前
Dioxus 接数据库最容易写歪的 3 个地方:sqlx + SQLite 怎么接才顺
前端·rust·前端框架
独孤留白15 小时前
从C到Rust:移动语义、引用传递与生命周期——一次讲清楚
rust
星栈15 小时前
Dioxus 表单处理:从输入、校验到文件上传,一条链路讲透
前端·rust·前端框架
doiito15 小时前
【Agent Harness】Gliding Horse 上下文动态感知与智能压缩:让 Agent 真正“听得进”每一句话
ai·rust·架构设计·系统设计·ai agent
Bigger1 天前
Tauri (26)——托盘图标总对不上系统主题?一行 Template Image 搞定
前端·rust·app
doiito1 天前
【Agent Harness】TPS的“自工程完结”教会了我一件事:别把Bug留给下一道工序
架构·rust
doiito2 天前
【Agent Harness】Gliding Horse 记忆系统深度剖析:像 CPU 一样思考的 AI 记忆架构
ai·rust·架构设计·系统设计·ai agent