Unterschied zwischen == und === in Rust
Hallo zusammen! Ich habe vor kurzem angefangen, Rust zu lernen, und bin auf ein unerwartetes Problem beim Vergleichen von Werten gestoßen. In manchen Sprachen (z.B. JavaScript) gibt es zwei Vergleichsoperatoren: == (mit Typumwandlung) und === (strikter Vergleich ohne Typumwandlung).
Ich habe versucht, === in Rust zum Vergleichen von Strings zu verwenden, aber der Compiler hat einen Fehler ausgegeben:
fn main() {
let a = String::from("hello");
let b = String::from("hello");
if a === b {
println!("Gleich");
}
}
Fehler: expected one of ".", ";", "?", "}", or an operator, found "=="
Ich hatte erwartet, dass === als strikter Vergleich ohne Typumwandlung funktioniert, aber offenbar gibt es diesen Operator in Rust nicht. Dabei ist