أخطاء مترجم Rustفادح
panic-index-out-of-boundsPanic — الفهرس خارج النطاق
انهار البرنامج لأن فهرساً كان خارج النطاق الصالح للمجموعة.
rustcargo
أسباب هذا الخطأ
تصل إلى مصفوفة أو متجه أو شريحة بفهرس أكبر من أو يساوي طولها. يُفحص الفهرس وقت التشغيل، والوصول خارج النطاق يُسبب انهياراً.
كيفية الإصلاح
تحقق من الطول قبل الفهرسة. استخدم .get(index) التي تُرجع Option بدلاً من الانهيار. تأكد من أن حدود الحلقة تطابق طول المجموعة. استخدم المكررات بدلاً من الفهرسة اليدوية.
مثال
let v = vec![1, 2];
v[5]; // panics!رموز أخطاء ذات صلة
أخطاء مترجم Rustخطأ
E0405E0405 — تعذّر العثور على السمة في النطاق الحالي
اسم سمة مُستخدَم لكنه غير معرَّف أو غير مستورد في النطاق الحالي.
rustcargo
عرض التفاصيل أخطاء مترجم Rustتحذير
clippy::clone_on_copyClippy — Clone على نوع Copy
تُستدعى الدالة clone() على نوع يُطبّق Copy.
rustcargo
عرض التفاصيل أخطاء مترجم Rustخطأ
E0061E0061 — عدد غير صحيح من الوسائط
استُدعيت دالة بعدد خاطئ من الوسائط.
rustcargo
عرض التفاصيل أخطاء مترجم Rustخطأ
E0373E0373 — قد تعيش الإغلاقة أطول من المتغير المُلتقَط
تلتقط الإغلاقة مرجعاً لمتغير قد لا يعيش طويلاً بما يكفي.
rustcargo
عرض التفاصيل أخطاء مترجم Rustخطأ
E0423E0423 — قيمة متوقعة، لكن نوع وُجد
اسم نوع مستخدَم في موضع يتوقع فيه المترجم قيمة.
rustcargo
عرض التفاصيل أخطاء مترجم Rustخطأ
E0310E0310 — قد لا يعيش النوع طويلًا بما يكفي
معامل نوع جنيس لا يفي بقيد دورة حياة مطلوب.
rustcargo
عرض التفاصيل