Rust में "use of moved value" त्रुटि को कैसे ठीक करें?
नमस्ते! मैंने Rust सीखना शुरू किया है और लगातार "use of moved value" त्रुटि का सामना कर रहा हूँ। यहाँ एक सरल उदाहरण है जो इसे उत्पन्न करता है:
```rust
fn main() {
let s = String::from("नमस्ते");
let t = s;
println!("{}", s); // त्रुटि: use of moved value: `s`
}
```
मैं समझता हूँ कि Rust ownership को सख्ती से ट्रैक करता है, लेकिन मैं समझ नहीं पा रहा हूँ कि variables और functions के बीच डेटा को सही तरीके से कैसे पास किया जाए। उदाहरण के लिए, मैं एक function लिखना चाहता हूँ जो एक string ले, उस पर कुछ प्रोसेसिंग करे, और फिर मैं उसी string को main में फिर से उपयोग करना चाहता हूँ:
```rust
fn process(s: String) -> String {
// कुछ प्रोसेसिंग
s
}
fn main() {
let my_string = String::from("टेस्ट");
let result = process(my_string);
println!("{}", my_string); // फिर से त्रुटि!
}
```
यह क्यों हो रहा है?