Rust borrowing
Borrowing va referencelar
Ba’zan qiymatga egalik qilmasdan undan foydalanish kerak bo‘ladi.
Rust buni reference (havola) yordamida amalga oshirish imkonini beradi - bu borrowing (qarzga olish) deb ataladi:
Reference nima?
Reference qiymatga egalik qilmasdan uni ko‘rish imkonini beradi. Reference & belgisi yordamida yaratiladi:
Misol
let a = String::from("Hello");
let b = &a;
println!("a = {}", a);
println!("b = {}", b);
O‘zingiz sinab ko‘ring »
b qiymatni faqat borrow qilayotgani (vaqtincha olayotgani) sababli, uning egasi hamon
a bo‘lib qoladi.
O‘zgaruvchan (mutable) referencelar
Agar reference orqali qiymatni o‘zgartirmoqchi bo‘lsangiz, referenceni mut qilishingiz kerak:
Misol
let mut name = String::from("John");
let name_ref = &mut name;
name_ref.push_str(" Doe");
println!("{}", name_ref); // John Doe
O‘zingiz sinab ko‘ring »
Eslatma: Bir vaqtning o‘zida bitta qiymatga faqat bitta o‘zgaruvchan (mutable) reference bo‘lishi mumkin!
Borrowing nega muhim
Borrowing qiymatlarni boshqaga berib yubormasdan, ulardan xavfsiz qayta foydalanishga yordam beradi.
- U qiymatlarga egalik qilmasdan ulardan foydalanish imkonini beradi
- U katta hajmdagi ma’lumotlar uchun sekin bo‘lishi mumkin bo‘lgan klonlashdan qochish imkonini beradi
- U dasturlaringizni xavfsizroq va tezroq qiladi
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
