Zig Academy · पाठ

if और orelse से सुरक्षित Unwrap

null को अप्रत्याशित परिणामों के बिना सँभालें।

पाठ 2, कुल 4 में से13 चरण

if और orelse से सुरक्षित Unwrap, CoddyKit पर Zig Academy का एक निःशुल्क पाठ है। यह 4 में से 2वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह Zig Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Zig Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

पहले अनरैप करना ज़रूरी है

वैकल्पिक प्रकार अपने अंदर मौजूद मान के समान नहीं होता। उसकी सामग्री का उपयोग करने से पहले आपको उसे अनरैप करना होगा और null वाली स्थिति से निपटना होगा।

if से कैप्चर करें

वैकल्पिक मान पर लगाया गया if पाइप कैप्चर के माध्यम से अंदर के मान को बाँध सकता है। इसका बॉडी तभी चलता है जब वैकल्पिक मान null न हो।

if (maybe) |value| {
    use(value);
}

null वाली शाखा संभालें

जब वैकल्पिक मान null हो, तब प्रतिक्रिया देने के लिए else जोड़िए। अब दोनों परिणाम संभाले जाते हैं और कोई स्थिति छूट नहीं सकती।

if (maybe) |v| {
    use(v);
} else {
    handleEmpty();
}

कैप्चर किया गया मान अनरैप होता है

if बॉडी के अंदर कैप्चर किया गया नाम वैकल्पिक नहीं, बल्कि अंदर के मान का साधारण प्रकार होता है। प्रश्नवाचक चिह्न आपके लिए पहले ही हट चुका होता है।

if (age) |a| {
    // a is i32, not ?i32
}

orelse डिफ़ॉल्ट मान देता है

orelse ऑपरेटर वैकल्पिक मान को अनरैप करता है, लेकिन यदि वह null हो तो उसकी बजाय दाईं ओर का मान लौटाता है।

const a = age orelse 0;

orelse एक एक्सप्रेशन है

क्योंकि orelse एक मान लौटाता है, आप इसे कहीं भी सीधे उपयोग कर सकते हैं, जैसे डिफ़ॉल्ट मान वाली संख्या को सीधे किसी फ़ंक्शन कॉल में भेजना।

print(level orelse 1);

orelse कोड चला सकता है

orelse का दायाँ भाग एक ब्लॉक हो सकता है। इसका उपयोग डिफ़ॉल्ट मान निकालने या वर्तमान फ़ंक्शन से तुरंत लौटने के लिए भी कीजिए।

const v = lookup() orelse return;

.? से ज़बरदस्ती अनरैप करें

.? लिखने पर आप दावा करते हैं कि वैकल्पिक मान null नहीं है और उसका मान प्राप्त कर लेते हैं। सुरक्षित बिल्ड में यदि वह null हुआ, तो आपका प्रोग्राम पैनिक करेगा।

const a = age.?;

.? का उपयोग तभी करें जब निश्चित हों

.? का उपयोग तभी कीजिए जब null होना वास्तव में असंभव हो। अन्यथा if या orelse को प्राथमिकता दें, ताकि खाली मान से आपका प्रोग्राम क्रैश न हो।

उद्देश्य के अनुसार चुनें

मौजूदगी के आधार पर शाखा चुनने के लिए if, तुरंत डिफ़ॉल्ट मान देने के लिए orelse और केवल तब .? का उपयोग करें जब आप साबित कर सकें कि मान मौजूद है।

सुरक्षा डिफ़ॉल्ट है

हर साधन आपको null को स्वीकार करके संभालने के लिए बाध्य करता है। इसी कारण Zig के वैकल्पिक प्रकार अन्य भाषाओं में दिखने वाले अप्रत्याशित क्रैश में बहुत कम बदलते हैं।

त्वरित जाँच

जब वैकल्पिक पूर्णांक null हो, तब आप 0 का डिफ़ॉल्ट मान चाहते हैं। इनमें से कौन-सा सबसे उपयुक्त है?

पुनरावलोकन

आप if कैप्चर से वैकल्पिक मानों को अनरैप कर सकते हैं, orelse से डिफ़ॉल्ट मान दे सकते हैं या .? से दावा कर सकते हैं। हर तरीका आपको जानबूझकर null का सामना कराता है। ✅

शुरुआत निःशुल्क

एआई शिक्षक के साथ Zig सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
30
पाठ
120

अक्सर पूछे जाने वाले प्रश्न

क्या “if और orelse से सुरक्षित Unwrap” पाठ निःशुल्क है?

हाँ—“if और orelse से सुरक्षित Unwrap” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और Zig Academy पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। Zig Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“if और orelse से सुरक्षित Unwrap” में मैं क्या सीखूँगा?

null को अप्रत्याशित परिणामों के बिना सँभालें। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Zig Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या Zig Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Zig Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 2वाँ पाठ है।

“if और orelse से सुरक्षित Unwrap” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस Zig Academy पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर Zig Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. Optional Types घोषित करना
  2. if और orelse से सुरक्षित Unwrap
  3. Optional Pointers और ?*T
  4. null बनाम undefined
← Zig Academy पर वापस जाएँ