const 和 static
有兩種宣告值的方法,不僅僅是用 let
。它們是 const
和 static
。另外,Rust 不會使用型別推理:你需要為它們編寫型別。這些都是用於不改變的值(const
表示常數)。區別在於:
const
是用於不改變的值,當使用它時,名字會被替換成值。static
與const
類似,但有一個固定的記憶體位置,可以作為一個全域性變數使用。
所以它們幾乎是一樣的。Rust 程式設計師幾乎總是使用 const
。
你用全大寫字母命名,而且通常放在 main
之外,這樣它們就可以在整個程式中生存。
兩個範例是 const NUMBER_OF_MONTHS: u32 = 12;
和 static SEASONS: [&str; 4] = ["Spring", "Summer", "Fall", "Winter"];