int a=1, b=a++;
अपरिभाषित व्यवहार का आह्वान करते हैं? a
के प्रारंभिक और b
के प्रारंभकर्ता में इसकी पहुंच और संशोधन के बीच कोई अनुक्रम बिंदु हस्तक्षेप नहीं है, लेकिन जहां तक मैं कह सकता हूं, प्रारंभिक वस्तु वस्तु का "संशोधन" नहीं है; ऑब्जेक्ट का "प्रारंभिक मान" देने के लिए एक प्रारंभकर्ता निर्दिष्ट किया गया है। प्रति 6.7.8 प्रारंभ, अनुच्छेद 8:int int = 1, b = a ++; अपरिभाषित व्यवहार का आह्वान करें?
एक प्रारंभकर्ता किसी ऑब्जेक्ट में संग्रहीत प्रारंभिक मान निर्दिष्ट करता है।
और ऑब्जेक्ट तक किसी भी पहुंच से पहले "प्रारंभिक" अनुक्रमित होने के लिए उचित लगता है। क्या इस मुद्दे को पहले माना गया है, और क्या एक स्वीकार्य व्याख्या है?
मैं कहूंगा कि फुटनोट 97 कहता है कि यह 'int a = 1 के समान है; int बी = ए ++; '। –
@KerrekSB: फुटनोट 97 मानक के किस संस्करण (या ड्राफ्ट) में? फुटनोट संख्या अनुभाग संख्याओं की तुलना में बहुत कम स्थिर हैं। –
आईआईआरसी, मानक के नवीनतम संस्करणों में, "अनुक्रम बिंदु" की अवधारणा को अप्रचलित किया जा रहा है। फुटनोट्स के रूप में, हाल ही में एक फुटनोट के बारे में एक चर्चा हुई जिसने घोषित और प्रारंभिक निर्माण की प्रसंस्करण के आदेश को परिभाषित किया था, और वह फुटनोट वास्तव में काफी पुराना और स्थिर लगता है :) – quetzalcoatl