language-lawyer पर टैग किए गए जवाब

प्रोग्रामिंग भाषाओं और वातावरणों की औपचारिक या आधिकारिक विशिष्टताओं की जटिलताओं के बारे में प्रश्नों के लिए।

1
क्या sizeof (enum) sizeof (std :: अंतर्निहित_type <Enum> :: type) से भिन्न हो सकता है?
हाल ही में एक कोड समीक्षा में आया था कि निम्नलिखित उदाहरण में: enum class A : uint8_t { VAL1, VAL2 }; ... std::vector&lt;A&gt; vOfA; // Assume this is sized and full of some stuff. std::memcpy(wire_buffer, vOfA.data(), vOfA.size() * sizeof(A)); हमें sizeof(std::underlying_type&lt;A&gt;::type)इसके बजाय उपयोग करना चाहिए sizeof(A)। क्या यह संभव …

1
क्या हास्केल पार्सर को यूनिकोड अंकों को संख्यात्मक शाब्दिकों में अनुमति देना चाहिए?
एक अभ्यास के रूप में, मैं स्क्रैच से हास्केल के लिए एक पार्सर लिख रहा हूं। लेसर बनाने में, मैंने हास्केल 2010 रिपोर्ट पर निम्नलिखित नियमों को देखा : अंक → ascDigit | uniDigit ascDigit → 0| 1| … | 9 uniDigit → कोई भी यूनिकोड दशमलव अंक ऑक्टिट → …

1
C ++ कंपाइलर एक बाहरी चर कैसे खोजते हैं?
मैं इस प्रोग्राम को g ++ और clang ++ द्वारा संकलित करता हूं। एक अंतर है: जी ++ प्रिंट 1, लेकिन क्लैंग ++ प्रिंट्स 2. ऐसा लगता है कि जी ++: एक्सटर्नल वेरिएबल को सबसे कम दायरे में परिभाषित किया गया है। क्लैंग ++: एक्सटर्नल वेरिएबल को सबसे कम वैश्विक …

2
`Std :: basic_ios` का सार्वजनिक निर्माण क्यों होता है?
std::basic_iosएक सार्वजनिक निर्माता है : explicit basic_ios (std::basic_streambuf&lt;CharT,Traits&gt;* sb); IMO, किसी क्लास के पास पब्लिक कंस्ट्रक्टर होने का एकमात्र कारण प्रोग्राम में उस क्लास के स्टैंडअलोन इंस्टेंस का उपयोग करना है। यदि एक वर्ग केवल अन्य वर्गों के पास होता है, तो उससे उतरता है (जैसा कि मामला लगता है …

2
क्या एक प्रोग्राम है जो कभी भी मान्य C ++ प्रोग्राम को समाप्त नहीं करता है?
क्या एक कार्यक्रम को समाप्त करने के लिए आवश्यक है? दूसरे शब्दों में एक प्रोग्राम है जो हमेशा के लिए तकनीकी रूप से अपरिभाषित व्यवहार चलता है? ध्यान दें कि यह खाली छोरों के बारे में नहीं है। उन कार्यक्रमों के बारे में बात करना जो हमेशा के लिए "सामान" …

1
जब खाली आधार वर्ग भी एक सदस्य चर है तो खाली आधार अनुकूलन क्यों वर्जित है?
खाली आधार अनुकूलन महान है। हालाँकि, यह निम्नलिखित प्रतिबंध के साथ आता है: खाली आधार अनुकूलन निषिद्ध है यदि खाली आधार वर्गों में से एक भी प्रकार या पहले गैर-स्थैतिक डेटा सदस्य के प्रकार का आधार है, क्योंकि ऑब्जेक्ट के प्रतिनिधित्व के भीतर अलग-अलग पते होने के लिए एक ही …

1
क्या __func__ पॉइंटर्स के दो कॉन्स्ट्रेप इंस्टेंसेस का अंतर अभी भी कॉन्स्टैक्स है?
क्या यह वैध सी ++ है? int main() { constexpr auto sz = __func__ - __func__; return sz; } GCC और MSVC को लगता है कि यह ठीक है, क्लैंग को लगता है कि यह नहीं है: कंपाइलर एक्सप्लोरर । सभी कंपाइलर सहमत हैं कि यह एक ठीक है: कंपाइलर …

1
यह std :: gcd में एक बग है?
मैं इस व्यवहार से आया std::gcdहूं कि मुझे अप्रत्याशित लगा: #include &lt;iostream&gt; #include &lt;numeric&gt; int main() { int a = -120; unsigned b = 10; //both a and b are representable in type C using C = std::common_type&lt;decltype(a), decltype(b)&gt;::type; C ca = std::abs(a); C cb = b; std::cout &lt;&lt; a …

2
अगर हम तुच्छ डिफ़ॉल्ट निर्माणकर्ता कोई कार्रवाई नहीं करते हैं तो हम मॉलॉक का उपयोग करके तुच्छ रूप से रचनात्मक वस्तुओं को क्यों नहीं बना सकते हैं?
मुझे तुच्छ डिफ़ॉल्ट कंस्ट्रक्टर के बारे में cppreference से उद्धृत निम्नलिखित पैराग्राफ को समझने में कठिनाई होती है । मैंने स्टैकओवरफ़्लो खोज लिया है, लेकिन अभी भी स्पष्ट उत्तर नहीं मिला है। तो कृपया मदद करें। एक सामान्य डिफ़ॉल्ट कंस्ट्रक्टर एक ऐसा कंस्ट्रक्टर है जो कोई कार्य नहीं करता है। …

4
C ++ 11 में StoreLoad बाधा कैसे प्राप्त करें?
मैं पोर्टेबल कोड (इंटेल, एआरएम, पावरपीसी ...) लिखना चाहता हूं जो एक क्लासिक समस्या का एक प्रकार हल करता है: Initially: X=Y=0 Thread A: X=1 if(!Y){ do something } Thread B: Y=1 if(!X){ do something } जिसमें लक्ष्य एक ऐसी स्थिति से बचने का है जिसमें दोनों धागे कर रहे …

4
क्या छूट का विवरण गलत तरीके से लागू करने में गलत है?
में के प्रलेखन std::memory_ordercppreference.com पर आराम आदेश का एक उदाहरण है: आराम से ऑर्डर देना टैग किए गए परमाणु संचालन memory_order_relaxedसिंक्रनाइज़ेशन ऑपरेशन नहीं हैं; वे समवर्ती मेमोरी एक्सेस के बीच एक आदेश नहीं देते हैं। वे केवल परमाणुता और संशोधन आदेश स्थिरता की गारंटी देते हैं। उदाहरण के लिए, शुरू …

2
अगर लैम्ब्डा में static_assert के साथ कॉन्स्टैक्स होता है, तो कौन सा कंपाइलर सही है?
जब हम एक static_assertमें उपयोग करना चाहते हैं तो हमें if constexprकुछ टेम्पलेट पैरामीटर पर निर्भर होना चाहिए। दिलचस्प बात यह है कि जब कोड लैम्बडा में लपेटा जाता है तो जीसीसी और क्लैग असहमत होते हैं। निम्न कोड gcc के साथ संकलित करता है, लेकिन क्लैग मुखर को ट्रिगर …

2
क्या Derived1 :: Base और Derived2 :: Base समान प्रकार को संदर्भित करता है?
इस कोड पर MSVC, Clang और GCC असहमत हैं: struct Base { int x; }; struct Der1 : public Base {}; struct Der2 : public Base {}; struct AllDer : public Der1, public Der2 { void foo() { Der1::Base::x = 5; } }; Godbolt जीसीसी: &lt;source&gt;: In member function 'void …

1
कक्षाओं में आसन्न सदस्यों के ओवरलैपिंग को क्या रोकता है?
निम्नलिखित तीन structएस पर विचार करें : class blub { int i; char c; blub(const blub&amp;) {} }; class blob { char s; blob(const blob&amp;) {} }; struct bla { blub b0; blob b1; }; विशिष्ट प्लेटफार्मों पर जहां int4 बाइट्स हैं, आकार, संरेखण और कुल पैडिंग 1 इस प्रकार …

1
हास्केल में किसी फ़ंक्शन - a (>) के बारे में क्या नियम हैं?
जैसा कि शीर्षक कहता है: हास्केल फ़ंक्शन रिटर्निंग यूनिट के मूल्यांकन की क्या गारंटी है? कोई सोचता है कि इस तरह के मामले में किसी भी तरह के मूल्यांकन को चलाने की कोई आवश्यकता नहीं है, कंपाइलर ऐसे सभी कॉल को तत्काल ()मूल्य के साथ बदल सकता है जब तक …

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.