कोड का निम्न भाग में, मैं दस्तावेज़ के लिए है कि एक fallthrough वांछित है सी ++ 1Z से मानक [[fallthrough]]
विशेषता का उपयोग:जब मैं [[fallthrough]] का उपयोग करता हूं तब भी जीसीसी मुझे एक गिरावट के बारे में चेतावनी दे रहा है?
#include <iostream>
int main() {
switch (0) {
case 0:
std::cout << "a\n";
[[fallthrough]]
case 1:
std::cout << "b\n";
break;
}
}
जीसीसी 7.1 के साथ, कोड एक त्रुटि के बिना संकलित करता है। हालांकि, संकलक अभी भी मुझे गिरावट के बारे में चेतावनी देता है:
warning: this statement may fall through [-Wimplicit-fallthrough=]
std::cout << "a\n";
~~~~~~~~~~^~~~~~~~
क्यों?
और यहां मैं आपको सोच रहा था कि सी ++ लोग संभवतः चीजों को किसी भी प्रकार के काम नहीं कर पाएंगे! – SnakeDoc
@ स्नैकडॉक: यह एक उपहार है! – Deduplicator
@ स्नैकडॉक यह उत्तर पर एक टिप्पणी होना चाहिए, जो इसे और भी बदतर बनाता है। :) – hvd