use of moved value: `variable` – Rust E0382

E0382

L'errore E0382 del compilatore Rust indica che una variabile è stata utilizzata dopo che il possesso (ownership) dei suoi dati è stato trasferito a un'altra variabile o funzione, senza implementare il trait Copy.

Cosa significa questo errore?

L'errore E0382 del compilatore Rust indica che una variabile è stata utilizzata dopo che il possesso (ownership) dei suoi dati è stato trasferito a un'altra variabile o funzione, senza implementare il trait Copy.

Messaggio originale

use of moved value: `variable`

Contesto e parole chiave

Alias

  • E0382
  • use of moved value

Messaggi alternativi

  • valore spostato utilizzato nuovamente in Rust

Prodotti

  • Rust Compiler (rustc) / Cargo / Tokio

Piattaforme

  • Linux
  • macOS
  • Windows

Parole chiave

  • Borrow Checker e Lifetimes
  • errore-rust-e0382-use-of-moved-value
  • rust
  • rust.borrowck.e0382-use-of-moved-value

Cause possibili

Causa tecnica per Errore Rust E0382: use of moved value (Uso di Valore Spostato)

L'errore E0382 del compilatore Rust indica che una variabile è stata utilizzata dopo che il possesso (ownership) dei suoi dati è stato trasferito a un'altra variabile o funzione, senza implementare il trait Copy.

molto comune

Diagnosi

Verifica di compilazione e diagnostica per Errore Rust E0382: use of moved value (Uso di Valore Spostato)

Eseguire il comando cargo check per visualizzare l'output dettagliato del compilatore con suggerimenti (explain).

Come leggere il risultato. Fornisce la spiegazione estesa dell'errore di compilazione o stack trace del panic.

cargo
cargo check --explain E0382

Risoluzione

Risoluzione standard per Errore Rust E0382: use of moved value (Uso di Valore Spostato)

Difficoltà: mediaRischio: basso

Applica le correzioni consigliate per conformarsi alle regole di ownership, tipi o runtime in Rust.

  1. Ispezionare la riga evidenziata dal compilatore rustc
  2. Riformulare il codice secondo le linee guida della gestione ownership e borrow
  3. Eseguire cargo check per confermare la risoluzione
cargo
cargo check

Domande frequenti

Cosa significa Errore Rust E0382: use of moved value (Uso di Valore Spostato)?

L'errore E0382 del compilatore Rust indica che una variabile è stata utilizzata dopo che il possesso (ownership) dei suoi dati è stato trasferito a un'altra variabile o funzione, senza implementare il trait Copy.

Approfondimenti

Schede correlate