Rust में अपरिवर्तनीय चर और स्थिरांक के बीच क्या अंतर है?
नमस्ते! मैंने Rust सीखना शुरू किया है और एक मूलभूत अवधारणा में उलझ गया हूँ। दस्तावेज़ीकरण में कहा गया है कि चर डिफ़ॉल्ट रूप से अपरिवर्तनीय (immutable) होते हैं, और उन्हें बदलने के लिए `mut` का उपयोग करना होता है। लेकिन `const` कीवर्ड भी है। इनमें क्या अंतर है?\n\nमैंने ऐसा कोड लिखने की कोशिश की:\n\n```rust\nconst MAX_POINTS: u32 = 100_000;\nlet x = 5;\nx = 6; // त्रुटि!\n```\n\nऔर ऐसा लगता है कि `MAX_POINTS` और `x` दोनों को इनिशियलाइज़ेशन के बाद बदला नहीं जा सकता। लेकिन कंपाइलर `x = 6` पर त्रुटि देता है, जबकि स्थिरांक पर नहीं। क्यों? और अगर मैं `let` के माध्यम से एक अपरिवर्तनीय चर घोषित कर सकता हूँ, तो स्थिरांक की आवश्यकता क्यों है? किन मामलों में `const` का उपयोग करना चाहिए और किनमें `let` का?\n\nमैंने यह भी देखा कि स्थिरांकों में हमेशा टाइप एनोटेशन देना होता है, जबकि चरों में हमेशा नहीं। क्या यह उनकी प्रकृति से संबंधित है? आभारी रहूँगा।