مصفوفات المراجع القابلة للتغيير
جزء من قسم Fundamentals في رحلة Rust على Coddy — الدرس 60 من 75.
عندما تكون المصفوفة مرجعاً، يمكنك جعلها قابلة للتغيير باستخدام &mut. يسمح لك هذا بتعديل البيانات الأصلية من خلال المرجع.
على سبيل المثال:
fn process_array(arr: &mut [i32]) {
arr[0] = 3;
}والآن عندما تقوم بتمرير مصفوفة قابلة للتغيير (mutable) إلى الدالة:
let mut numbers = [1, 2, 3, 4, 5];
process_array(&mut numbers);
// الآن ستكون قيمة numbers[0] هي 3التحدي
سهلقم باستدعاء الدالة process_array باستخدام المصفوفة المعطاة.
ورقة مرجعية
لإنشاء مرجع قابل للتغيير (mutable reference) لمصفوفة، استخدم &mut:
fn process_array(arr: &mut [i32]) {
arr[0] = 3;
}
let mut numbers = [1, 2, 3, 4, 5];
process_array(&mut numbers);
// الآن ستكون قيمة numbers[0] هي 3جرّب بنفسك
fn process_array(arr: &mut [i32]) {
arr[0] = 3;
}
fn main() {
let mut numbers = [1, 2, 3, 4, 5];
// استدعاء process_array
for i in 0..numbers.len() {
print!("{} ", numbers[i]);
}
}يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس Fundamentals
4المعاملات - الجزء الأول
المعاملات الحسابيةمعامل باقي القسمة (Modulo)اختصارات العمليات الحسابيةمعاملات المقارنةمقارنة النصوص7أساسيات الإدخال والإخراج
الطباعة على الكونسولقراءة مدخلات المستخدممراجعة - حتى 120مراجعة - True أو False13تكملة المصفوفات
مصفوفات المراجع القابلة للتغييردوال المصفوفاتمراجعة - مصفوفة الضربمراجعة - المصفوفة المعكوسةطباعة أفضل2المتغيرات - الجزء الأول
الأرقامالمحارف (Char)النصوص (String)القيم المنطقية (Boolean)المتغيرات القابلة للتغيير5المعاملات - الجزء الثاني
المعاملات المنطقية - الجزء الأولالمعاملات المنطقية - الجزء الثانيمراجعة - المنطق البسيطالمعاملات المنطقية - الجزء الثالث11الدوال
تعريف الدوالالمعاملات والوسائطقيم الإرجاعقيم إرجاع متعددةمراجعة - دالة Sigmaمراجعة - دالة التحقق14التكرار عبر المصفوفات
دليل النطاق (Range)حلقة For المحسنةالاستعارة في الحلقةعمليات المصفوفات الشائعة3المتغيرات - الجزء الثاني
التصريح عن النوعقواعد التسميةاستنتاج النوعمراجعة - تهيئة المتغيراتتحويل الأنواع9الحلقات التكرارية
For عبر السلاسلحلقة Whileجملة Breakجملة Continueالحلقات المتداخلةتسميات الحلقاتالحلقة اللانهائيةمراجعة - الإدخال الديناميكي