كيفية إنشاء هيكل في Rust يحتوي على حقول من نوع String بشكل صحيح
مرحباً بالجميع! لقد بدأت للتو في تعلم Rust وواجهت مشكلة عند إنشاء هيكل بسيط يجب أن يحتوي على حقول نصية. في لغات أخرى (مثل Python أو Java) كنت ببساطة أعلن عن حقل نصي وكان كل شيء يعمل. لكن في Rust الأمور أكثر تعقيداً.
إليك ما أحاول فعله:
```rust
struct Person {
name: &str,
age: u32,
}
fn main() {
let person = Person {
name: "Alice",
age: 30,
};
println!("{} is {} years old", person.name, person.age);
}
```
المترجم يعطي خطأ: `missing lifetime specifier`. أفهم أن هذا مرتبط بأن `&str` هو مرجع، والمترجم لا يعرف كم سيعيش. لكنني لا أريد التعقيد مع زمن الحياة، أريد فقط أن يمتلك الهيكل بياناته.
حاولت استخدام `String` بدلاً من `&str`، لكنني لا أستطيع تمرير نص حرفي مباشرة. كيف يمكنني العمل مع السلاسل النصية في الهياكل بشكل صحيح؟ هل يجب دائماً استخدام `String` للحقول التي ت