Avatar ·

كيفية تكرار سلسلة نصية عدة مرات في Rust؟ مثال على ضرب السلسلة بعدد

مرحباً أيها الزملاء! لقد بدأت للتو في تعلم Rust وواجهت مشكلة غير متوقعة. في Python كنت معتاداً على كتابة شيء مثل `"hello" * 3` للحصول على `"hellohellohello"`. في Rust حاولت فعل الشيء نفسه:\n\n```rust\nfn main() {\n let s = "hello" * 3;\n println!("{}", s);\n}\n```\n\nلكن المترجم يعطي خطأ: `cannot multiply `&str` by `{integer}``. أفهم أن Rust لغة ذات أنواع صارمة، وأن ضرب السلاسل النصية بالأعداد غير معرف بشكل افتراضي، ولكن كيف يمكنني تكرار سلسلة نصية عدة مرات بشكل صحيح؟\n\nقرأت أن في Rust هناك traits وطرق، لكنني لم أتعرف عليها بعد. أحتاج إلى تكرار سلسلة نصية ديناميكياً، مثلاً لإنشاء فاصل في المخرجات: تكرار `"---"` 10 مرات للحصول على سلسلة من 30 شرطة. كما أود فهم كيفية القيام بذلك بكفاءة، دون