Avatar ·

Copy और Clone को String (या किसी भी गैर-Copy प्रकार) वाली संरचना के लिए कैसे लागू करें?

सभी को नमस्ते! मैंने अभी Rust सीखना शुरू किया है और एक समस्या का सामना कर रहा हूँ जिसे मैं दूसरे दिन से हल नहीं कर पा रहा हूँ। मैं उपयोगकर्ताओं के साथ काम करने के लिए एक सरल प्रोग्राम लिख रहा हूँ, और मेरे पास ऐसी संरचना है:\n\n```rust\nstruct User {\n id: u32,\n name: String,\n email: String,\n}\n```\n\nमुझे चाहिए कि इस संरचना को कॉपी किया जा सके और बिना उधार लिए फंक्शन में पास किया जा सके — यानी मैं इसके लिए `Copy` और `Clone` ट्रेट्स लागू करना चाहता हूँ। लेकिन जब मैं `#[derive(Copy, Clone)]` लिखता हूँ तो कंपाइलर त्रुटि देता है:\n\n```\nerror[E0204]: the trait `Copy` may not be implemented for this type\n --> src/main.rs:1:10\n |\n1 | #[derive(Copy, Clone)]\n | ^^^^\n2 | struct User {\n3 | name: String,\n | ---- this field does not implement `Copy`\n```\n\nमैं समझता हूँ कि `String` `Copy` लागू नहीं करता है, क्योंकि