Rust में `use` और `extern crate` में क्या अंतर है?
नमस्ते! मैंने हाल ही में Rust सीखना शुरू किया है और इम्पोर्ट को लेकर भ्रमित हूँ। कुछ उदाहरणों में मैं `extern crate` देखता हूँ, और कुछ में `use`। उदाहरण के लिए, मैं एक सरल प्रोग्राम लिख रहा हूँ जो रैंडम नंबर जनरेट करने के लिए `rand` crate का उपयोग करता है:
```rust
// विकल्प 1
extern crate rand;
use rand::Rng;
fn main() {
let mut rng = rand::thread_rng();
let n: u32 = rng.gen_range(1..101);
println!("रैंडम संख्या: {}", n);
}
```
लेकिन मैंने ऐसा कोड भी देखा है जहाँ `extern crate` बिल्कुल उपयोग नहीं किया गया, और सीधे `use` लिखा गया है:
```rust
// विकल्प 2
use rand::Rng;
fn main() {
let mut rng = rand::thread_rng();
let n: u32 = rng.gen_range(1..101);
println!("रैंडम संख्या: {}", n);
}
```
दोनों विकल्प काम करते हैं, लेकिन मुझे समझ नहीं आता कि अंतर क्या है। कब `extern crate` लिखना चाहिए और कब केवल `use` पर्याप्त है? क्या `extern crate` एक पुरानी संरचना है? या क्या यह किसी विशेष मामले के लिए आवश्यक है? कृपया उदाहरणों के साथ समझाएँ। पहले से धन्यवाद!