Avatar ·

كيفية تحويل Vec<String> إلى Vec<&str> في Rust؟

مرحباً بالجميع! بدأت تعلم Rust وواجهت مشكلة في تحويل الأنواع. لدي `Vec`، وأحتاج إلى تمريره إلى دالة تتوقع `Vec<&str>`. حاولت ببساطة تحويل الأنواع، لكن المترجم يشتكي. إليك الكود الخاص بي: ```rust fn process_strings(strings: Vec<&str>) { for s in strings { println!("{}", s); } } fn main() { let owned_strings: Vec = vec!["hello".to_string(), "world".to_string()]; // أحاول تمرير Vec إلى دالة تتوقع Vec<&str> process_strings(owned_strings); // خطأ! } ``` المترجم يعطي خطأ نوع: `expected Vec<&str>, found Vec`. أفهم أن `String` و `&str` نوعان مختلفان، لكن كيف يمكنني تحويل متجه إلى آخر؟ جربت استخدام `.iter().collect`