Přeskočit na obsah
Chyby kompilátoru RustChyba
E0308

E0308 — Neshodující se typy

Očekávaný typ neodpovídá skutečně poskytnutému typu.

rustcargo

Co způsobuje tuto chybu

Funkce vrací jiný typ, než je deklarován, proměnné je přiřazen nekompatibilní typ, nebo větev match vrací jiný typ. Striktní typový systém Rustu vyžaduje přesnou shodu typů bez implicitních konverzí.

Jak to opravit

Převeďte hodnotu na očekávaný typ pomocí .into(), as nebo trait From/Into. Opravte anotaci návratového typu tak, aby odpovídala skutečné vrácené hodnotě. Podle potřeby použijte .to_string(), .as_str() nebo jiné konverzní metody.

Příklad

fn main() {
  let x: i32 = "hello";
}
Oficiální dokumentace

Související chybové kódy