जंग में, संदर्भ कभी नहीं अशक्त हो सकता है, इसलिए इस मामले में जहां आप वास्तव में इस तरह के एक लिंक्ड सूची के रूप में, अशक्त की जरूरत है, तो आप Option
प्रकार का उपयोग करें:जंग के विकल्प प्रकार का ऊपरी भाग क्या है?
struct Element {
value: i32,
next: Option<Box<Element>>,
}
कितना भूमि के ऊपर स्मृति के मामले में इस में शामिल है आवंटन और एक साधारण सूचक की तुलना में dereference के लिए कदम? क्या Option
लागत मुक्त, या Option
को निर्माण का उपयोग करके, या वेक्टर में पॉइंटर को लपेटकर किसी भी गैर-कोर लाइब्रेरी में स्वयं को संकलित करने के लिए कंपाइलर/रनटाइम में कुछ "जादू" है ?
इसके अलावा, यह अनुकूलन सभी "' विकल्प 'जैसी "enums" में होता है, इसलिए यह उपयोगकर्ता द्वारा परिभाषित' विकल्प' के लिए भी काम करेगा। –