मैंने केवल कल ही सीखा है कि प्रारंभकर्ता सूची आइटमों के पैरामीटर निर्दिष्ट करना वैकल्पिक है। हालांकि, इस मामले में होता है के लिए नियम क्या हैं?सी ++ प्रारंभकर्ता सूची में डिफ़ॉल्ट मान
नीचे दिए गए उदाहरण में, क्या पीआरआर 0 पर शुरू किया जाएगा, झूठी टॉगल करेगा, और बार डिफ़ॉल्ट-निर्मित होगा? मुझे लगता है कि इस सवाल का एक तरह से बेमानी है, क्योंकि वहाँ अगर अनिर्दिष्ट तर्क मान == अपरिभाषित व्यवहार प्रारंभकर्ता सूचियों में थोड़ा बिंदु होगा।
क्या मुझे सी ++ मानक के अनुभाग की भी ओर इशारा किया जा सकता है जो प्रारंभकर्ता सूची आइटमों के मामले में व्यवहार को तर्क नहीं दिया जा रहा है?
class Bar
{
Bar() { }
};
class SomeClass;
class AnotherClass
{
public:
SomeClass *ptr;
bool toggle;
Bar bar;
AnotherClass() : ptr(), toggle(), bar() { }
// as opposed to...
// AnotherClass() : ptr(NULL), toggle(false), bar(Bar()) { }
};
[खाली आरंभीकरण के साथ निर्माता प्रारंभ सूची] के संभावित डुप्लिकेट (https://stackoverflow.com/questions/11164394/constructor-initialization-list-with-empty-initialization) – Justin