كيفية جمع عناصر المكرر في مصفوفة ذات حجم ثابت في Rust؟
مرحباً بالجميع! لقد بدأت مؤخراً في تعلم Rust وواجهت مشكلة تبدو بسيطة جداً، لكنني لا أستطيع إيجاد الحل الصحيح.
لدي مكرر (iterator) يقوم بإرجاع سلسلة من الأرقام. أريد جمع كل هذه الأرقام في مصفوفة [i32; N]، حيث N معروفة في مرحلة التجميع. على سبيل المثال، أكتب دالة تأخذ شريحة (slice) من الأرقام وتعيد مصفوفة من أول 5 عناصر:
fn first_five(data: &[i32]) -> [i32; 5] {
data.iter().take(5).collect() // لا يعمل!
}
المترجم يعطي خطأ: the trait bound `[i32; 5]: FromIterator<&i32>` is not satisfied. أفهم أن collect() يعمل مع المجموعات مثل Vec، لكن كيف أجعله يعمل مع المصفوفات؟
لقد جربت