Avatar ·

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` एक पुरानी संरचना है? या क्या यह किसी विशेष मामले के लिए आवश्यक है? कृपया उदाहरणों के साथ समझाएँ। पहले से धन्यवाद!