我不太熟悉编程,也不太了解生活.

const CONST_MEEP: &str = "MEEP";
const CONST_LIFETIME_MEEP: &'static str = "MEEP";
static STATIC_MEEP: &'static str = "MEEP";
static STATIC_LIFETIME_MEEP: &str = "MEEP";

fn main() {
    println!("CONST_MEEP is {}", CONST_MEEP);
    println!("CONST_LIFETIME_MEEP is {}", CONST_LIFETIME_MEEP);
    println!("STATIC_MEEP is {}", STATIC_MEEP);
    println!("STATIC_LIFETIME_MEEP is {}", STATIC_LIFETIME_MEEP);
}

输出:

CONST_MEEP is MEEP
CONST_LIFETIME_MEEP is MEEP
STATIC_MEEP is MEEP
STATIC_LIFETIME_MEEP is MEEP

CONST_MEEPCONST_LIFETIME_MEEP之间有什么区别?STATIC_MEEPSTATIC_LIFETIME_MEEP之间有什么区别?

推荐答案

没什么,没有区别.从RFC 1623开始,static项和const项中的引用自动变为'static项.这项规定于Rust 1.17年生效.

Rust相关问答推荐

为什么在Rust struct 中只允许最后一个字段具有动态大小的类型

如何将`Join_all``Vec<;Result<;Vec<;Foo&>;,Anywhere::Error&>;`合并到`Result<;Vec<;Foo&>;,Anywhere::Error&>;`

Tokio_Postgres行上未显示退回特性的生存期,且生命周期 不够长

我可以在不收集或克隆的情况下,将一个带有Item=(key,val)的迭代器拆分成单独的key iter和val iter吗?

在0..1之间将U64转换为F64

将serde_json读入`VEC<;T&>;`( rust 色)时出现问题

try 创建随机数以常量

为什么不';t(&;mut-iter).take(n)取得iter的所有权?

如何轮询 Pin>?

如何迭代存储在 struct 中的字符串向量而不移动它们?

如何在 Rust 中打印 let-else 语句中的错误?

Rust 中的内存管理

如何为已实现其他相关 std trait 的每个类型实现一个 std Trait

为什么需要同时为值和引用实现`From`?方法不应该自动解引用或borrow 吗?(2023-06-16)

如何判断服务器是否正确接收数据

为什么拥有 i32 所有权的函数需要它是可变的?

如何获取包裹在 Arc<> 和 RwLock<> 中的 Rust HashMap<> 的长度?

意外的正则表达式模式匹配

如何将 u8 切片复制到 u32 切片中?

为什么我不能将元素写入 Rust 数组中移动的位置,但我可以在元组中完成