दिलचस्प पोस्ट
जावास्क्रिप्ट का उपयोग करते हुए भारतीय स्वरूप में एक नंबर प्रदर्शित करना आप प्रोग्राम को एक विशेषता कैसे निर्धारित करते हैं? स्टेटमेंट और तैयार स्थिति में अंतर <input type = "file" /> के लिए एनजी-मॉडल jQuery स्क्रोलपॉप () सफारी या क्रोम में काम नहीं करता (विंडोज़) Iphone पर रेंडरिंग के बाद पीडीएफ फाइल पर टेक्स्ट को हाइलाइट करने के लिए कोई फ्रेमवर्क है चेतावनी: DOMDocument :: loadHTML (): htmlParseEntityRef: अपेक्षित ';' इकाई में, यह jQuery क्लिक फ़ंक्शन काम क्यों नहीं कर रहा है? मापदंडों के साथ जावास्क्रिप्ट इवेंट हैंडलर एंड्रॉइड में TextView के फ़ॉन्ट को बदलने के लिए कैसे करें दुर्भावना के माध्यम से सुरक्षा एक बुरा विचार क्यों है? जब @ जेसनप्रॉपर्टी प्रॉपर्टी का उपयोग किया जाता है और इसके लिए क्या उपयोग किया जाता है? प्रॉक्सी के पीछे पीआईपी का उपयोग करना क्या होगा अगर मैं एक अहस्ताक्षरित चर के लिए एक नकारात्मक मान निर्दिष्ट करता हूँ? {x: नल} बनाम पारदर्शी?

सी ++ 11: सही std :: array initialization?

यदि मैं एक std :: array को निम्नानुसार प्रारंभ किया है, तो कंपाइलर मुझे लापता ब्रेसिज़ के बारे में चेतावनी देता है I

std::array<int, 4> a = {1, 2, 3, 4}; 

यह समस्या को हल करता है:

 std::array<int, 4> a = {{1, 2, 3, 4}}; 

यह चेतावनी संदेश है:

 missing braces around initializer for 'std::array<int, 4u>::value_type [4] {aka int [4]}' [-Wmissing-braces] 

क्या यह जीसीसी के मेरे संस्करण में सिर्फ एक बग है, या जानबूझ कर किया है? यदि हां, तो क्यों?

वेब के समाधान से एकत्रित समाधान "सी ++ 11: सही std :: array initialization?"

यह std::array के नंगे कार्यान्वयन है:

 template<typename T, std::size_t N> struct array { T __array_impl[N]; }; 

यह एक समग्र ढांचा है जिसका केवल डेटा सदस्य एक पारंपरिक सरणी है, जैसे आंतरिक {} इनर सरणी को प्रारंभ करने के लिए उपयोग किया जाता है।

कुल प्रारंभिक रूप से (लेकिन आमतौर पर अनुशंसित नहीं) कुछ मामलों में ब्रेस एलिज़न की अनुमति है और इसलिए इस मामले में केवल एक ब्रेस का उपयोग किया जा सकता है। यहां देखें: सी ++ सरणियों का वेक्टर

Cppreference के अनुसार डबल ब्रेसिज़ केवल तभी आवश्यक है अगर = छोड़े गए।

 // construction uses aggregate initialization std::array<int, 3> a1{ {1,2,3} }; // double-braces required std::array<int, 3> a2 = {1, 2, 3}; // except after = std::array<std::string, 2> a3 = { {std::string("a"), "b"} };