Was ist der Unterschied zwischen use und extern crate in Rust? Wann verwendet man was?
Hallo Kollegen! Ich habe kürzlich angefangen, Rust zu lernen, und bin bei zwei Schlüsselkonstrukten verwirrt: `use` und `extern crate`. In der Dokumentation steht, dass beide mit Importen zu tun haben, aber ich verstehe nicht, wann ich welches verwenden soll.
Hier ist mein Code:
```rust
// Das funktioniert
extern crate rand;
use rand::Rng;
fn main() {
let secret_number = rand::thread_rng().gen_range(1..101);
println!("Geheime Zahl: {}", secret_number);
}
```
Aber wenn ich so schreibe, ohne `extern crate`:
```rust
use rand::Rng;
fn main() {
let secret_number = rand::thread_rng().gen_range(1..101);
println!("Geheime Zahl: {}", secret_number);
}
```
Beschwert sich der Compiler: `can't find crate for rand`. Wozu braucht man dann `use`, wenn ohne `extern crate` nichts funktioniert? Und umgekehrt – wenn ich nur `extern