मेरे पास एक ही प्रकार के कई सदस्यों के साथ एक संरचना है, जैसे यह
struct VariablePointers {
VariablePtr active;
VariablePtr wasactive;
VariablePtr filename;
};
समस्या यह है कि अगर मैं wasactiveइस तरह से एक संरचना के सदस्यों (जैसे ) को इनिशियलाइज़ करना भूल जाता हूँ :
VariablePointers{activePtr, filename}
संकलक इसके बारे में शिकायत नहीं करेगा, लेकिन मेरे पास एक वस्तु होगी जो आंशिक रूप से प्रारंभिक है। मैं इस तरह की त्रुटि को कैसे रोक सकता हूं? मैं एक कंस्ट्रक्टर जोड़ सकता था, लेकिन यह दो बार चर की सूची की नकल करेगा, इसलिए मुझे यह तीन बार लिखना होगा!
कृपया C ++ 11 उत्तर भी जोड़ें , यदि C ++ 11 का समाधान है (वर्तमान में मैं उस संस्करण तक सीमित हूं)। अधिक हाल के भाषा मानकों का भी स्वागत है, हालांकि!
-Wmissing-field-initializersसंकलन ध्वज है।