خطأ في Rust: "expected a literal" عند استخدام println! — كيف أصلحه؟
مرحباً! بدأت للتو في تعلم Rust وواجهت خطأً لا أستطيع فهمه. أحاول طباعة قيمة متغير باستخدام println!، لكن المترجم يشتكي.
إليك الكود الخاص بي:
```rust
fn main() {
let name = "Alice";
println!("Hello, " + name + "!");
}
```
المترجم ينتج:
```
error: expected a literal
--> src/main.rs:3:23
|
3 | println!("Hello, " + name + "!");
| ^
|
help: format argument must be a string literal
```
كنت أتوقع أن يتم دمج السلسلة النصية كما في Python أو JavaScript، لكن Rust بوضوح لا يريد العمل بهذه الطريقة. لماذا؟ كيف يمكنني طباعة المتغيرات بشكل صحيح؟ جربت إزالة الدمج وكتابة `println!("Hello, name!")` فقط — فتم طباعة "Hello, name!" حرفياً، وليس قيمة المتغير.
أرجو التوضيح، من فضلكم.