यह C++ एक वैध कार्य है:इंट रिटर्न वापस करने के लिए घोषित एक समारोह कुछ भी नहीं। क्या यह अनिर्धारित व्यवहार है?
int x = f(); //return value used
प्रश्न: करता है निम्नलिखित अभिव्यक्ति बयान कारण यूबी
int f()
{
if(false)
{
return 42;
}
}
निम्नलिखित परिभाषा यूबी का कारण बनता है?
f();
मानक से उद्धरण बहुत स्वागत है। धन्यवाद
चेतावनी: शैलीविज्ञान के बारे में टिप्पणी अप्रासंगिक हैं :)
में यह सच नहीं है मैं 99.9 999% सुनिश्चित हूं कि यह एक यूबी है। और यहां तक कि यदि यह नहीं है, तो यह एक प्रोग्रामिंग शैली नहीं है जो एक सिफारिश करेगा :) –
किसी टिप्पणी में कोड निष्पादित करने का प्रयास करना यूबी नहीं है। –
मुझे यह पसंद है कि सी # कंपाइलर इसे कैसे संभालता है: इस मामले में संकलन त्रुटि होगी: "सभी कोड पथ एक मान वापस नहीं करते हैं" – Andrey