const 和 static

YouTube 上觀看本章內容

有兩種宣告值的方法,不僅僅是用 let。它們是 conststatic。另外,Rust 不會使用型別推理:你需要為它們編寫型別。這些都是用於不改變的值(const 表示常數)。區別在於:

  • const 是用於不改變的值,當使用它時,名字會被替換成值。
  • staticconst 類似,但有一個固定的記憶體位置,可以作為一個全域性變數使用。

所以它們幾乎是一樣的。Rust 程式設計師幾乎總是使用 const

你用全大寫字母命名,而且通常放在 main 之外,這樣它們就可以在整個程式中生存。

兩個範例是 const NUMBER_OF_MONTHS: u32 = 12;static SEASONS: [&str; 4] = ["Spring", "Summer", "Fall", "Winter"];