मुझे यह सवाल एक दूसरे से पहले आया था, और मैं वहां से कुछ सामग्री खींच रहा हूं: क्या 'ब्रेक एन' निर्माण का कोई नाम है?
यह लोगों के लिए एक अनावश्यक रूप से जटिल तरीका प्रतीत होता है ताकि प्रोग्राम को लूप के लिए डबल-नेस्टेड से बाहर तोड़ने का निर्देश दिया जा सके:
for (i = 0; i < 10; i++) {
bool broken = false;
for (j = 10; j > 0; j--) {
if (j == i) {
broken = true;
break;
}
}
if (broken)
break;
}
मुझे पता है कि पाठ्यपुस्तकें यह कहना चाहती हैं कि गोटो के बयान शैतान हैं, और मैं उन सभी के लिए खुद को पसंद नहीं कर रहा हूं, लेकिन क्या यह नियम के अपवाद को सही ठहराता है?
मैं उन उत्तरों की तलाश में हूं जो लूप के लिए एन-नेस्टेड के साथ सौदा करते हैं।
ध्यान दें: चाहे आप हां, नहीं, या कहीं बीच में जवाब देते हैं, पूरी तरह से नज़दीकी विचारों का स्वागत नहीं है । खासकर यदि उत्तर नहीं है, तो एक अच्छा, वैध कारण प्रदान करें (जो कि स्टैक एक्सचेंज नियमों से बहुत दूर नहीं है)।
goto
: गोटो (C # संदर्भ) - "गोटो स्टेटमेंट गहरी नेस्टेड लूप से बाहर निकलने के लिए भी उपयोगी है।"
goto
पहले केस के अंदर किसी भी कोड को अंजाम देने के बाद @JohnWu को वास्तव में C # स्विच टू थ्रू किसी अन्य मामले में आवश्यक है। यह एकमात्र मामला है, जिसका मैंने गोटो उपयोग किया है, हालांकि।
for (j = 10; j > 0 && !broken; j--)
तो आपकोbreak;
कथन की आवश्यकता नहीं होगी । यदि आपbroken
बाहरी लूप शुरू होने से पहले की घोषणा को आगे बढ़ाते हैं , तो यदि वह लिखा जा सकता हैfor (i = 0; i < 10 && !broken; i++)
तो मुझे लगता है कि कोईbreak;
भी आवश्यक नहीं है।