खोज…


वाक्य - विन्यास

  • गुंजाइश (बाहर निकलना) - बयानों को कोई फर्क नहीं पड़ता कि वर्तमान ब्लॉक से बाहर कैसे निकला
  • गुंजाइश (सफलता) - बयानों को कहा जाता है जब वर्तमान ब्लॉक सामान्य रूप से बाहर निकल गया था
  • गुंजाइश (विफलता) - बयानों को तब बुलाया जाता है जब वर्तमान ब्लॉक अपवाद फेंकने के माध्यम से बाहर निकल गया था

टिप्पणियों

स्कोप गार्ड का उपयोग करने से कोड बहुत अधिक साफ हो जाता है और संसाधन आवंटन और एक दूसरे के बगल में कोड को साफ करने की अनुमति देता है। ये छोटे हेल्पर्स सुरक्षा में सुधार भी करते हैं क्योंकि वे सुनिश्चित करते हैं कि कुछ सफाई कोड को हमेशा स्वतंत्र कहा जाता है, जो वास्तव में रास्तों पर लिया जाता है।

डी स्कोप फीचर प्रभावी रूप से C ++ में इस्तेमाल होने वाले RAII मुहावरे को बदल देता है जो अक्सर विशेष संसाधनों के लिए विशेष स्कोप गार्ड ऑब्जेक्ट्स की ओर जाता है।

स्कोप गार्ड को उनके द्वारा परिभाषित किए गए रिवर्स ऑर्डर में कहा जाता है।

स्कोप गार्ड के साथ खेलें या एक व्यापक ट्यूटोरियल देखें

आवंटन और सफाई कोड को एक दूसरे के बगल में रखें

स्कोप गार्ड कुछ शर्तों पर बयानों को निष्पादित करने की अनुमति देते हैं यदि वर्तमान ब्लॉक छोड़ दिया जाता है।

import core.stdc.stdlib;

void main() {
    int* p = cast(int*)malloc(int.sizeof);
    scope(exit) free(p);
}

एकाधिक, नेस्टेड स्कोप

import std.stdio;

void main() {
    writeln("<html>");
    scope(exit) writeln("</html>");
    {
        writeln("\t<head>");
        scope(exit) writeln("\t</head>");
        "\t\t<title>%s</title>".writefln("Hello");
    } // the scope(exit) on the previous line is executed here

    writeln("\t<body>");
    scope(exit) writeln("\t</body>");

    writeln("\t\t<h1>Hello World!</h1>");
}

प्रिंट

<html>
    <head>
        <title>Hello</title>
    </head>
    <body>
        <h1>Hello World!</h1>
    </body>
</html>


Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow