在 Rust 中使用 & 符號
Rust 是一種強調安全性和速度的系統程式語言。編譯器會捕獲程式碼中的常見錯誤,這意味著除錯時間更短,安全問題也更少。
除了這些特性之外,Rust 還具有一個 & 符號 (&
) 特性,它可以使任何變數在程式碼中的任何位置可變或不可變。
在 Rust 中使用 & 符號 (&
) 建立可變或不可變變數
當你使用 & 符號 (&
) 時,它會轉換為引用。這裡的關鍵思想是,如果我們將引用變數作為引數傳送給函式,則該函式將採用引用引數。
如果不使用 & 符號 (&
),你會注意到編譯時錯誤。
可變性的概念
在 Rust 中,& 符號 (&
) 表示不可變引用,可變 & 符號 (&mut)
表示可變引用。
在使用引用時,理解 Rust 中的可變性概念非常重要。Rust 的許多安全保證都是基於可變引用和不可變引用之間的這種區別。
可以改變和重新分配可變的&符號,而無需使用指標或引用。這提供了一種更有效的方式來處理突變,因為它消除了對許多顯式複製和移動的需要。
讓我們討論一個例子。
fn main() {
let mut x = 6;
{
let y = &mut x;
*y -=2;
}
println!("A number is {}", x);
}
輸出:
A number is 4
如果我們在上面的例子中沒有應用 mut
,下面的行將無法執行。如果我們在開始時沒有使用 mut
關鍵字來構造變數,程式會丟擲異常。
我們試圖從不可變變數中獲取可變引用。
還有一個重要的因素需要考慮:你只能有一個可變的參考。因此,你無法構造大量可變引用。
點選這裡檢視上述程式碼的演示。
Muhammad Adil is a seasoned programmer and writer who has experience in various fields. He has been programming for over 5 years and have always loved the thrill of solving complex problems. He has skilled in PHP, Python, C++, Java, JavaScript, Ruby on Rails, AngularJS, ReactJS, HTML5 and CSS3. He enjoys putting his experience and knowledge into words.
Facebook