c++ पर टैग किए गए जवाब

C ++ एक सामान्य-प्रयोजन प्रोग्रामिंग भाषा है। यह मूल रूप से C के विस्तार के रूप में डिज़ाइन किया गया था और इसमें एक समान सिंटैक्स है, लेकिन यह अब पूरी तरह से अलग भाषा है। C ++ कंपाइलर के साथ संकलित (कोड होने के बारे में) सवालों के लिए इस टैग का उपयोग करें। विशिष्ट मानक संशोधन [C ++ 11], [C ++ 14], [C ++ 17] या [C ++ 20], आदि से संबंधित प्रश्नों के लिए संस्करण-विशिष्ट टैग का उपयोग करें।

2
एक पॉइंटर के गुण शून्य लंबाई सरणी के लिए
विचार करें int main() { auto a = new int[0]; delete[] a; // So there's no memory leak } प्रतिलिपि आरंभीकरण और विलोपन के बीच, क्या आपको सूचक को पढ़ने की अनुमति है a + 1? इसके अलावा, क्या भाषा कंपाइलर को सेट aकरने की अनुमति देती है nullptr?

2
कौन से <random> के यादृच्छिक संख्या इंजनों को वास्तव में व्यवहार में उपयोग करना चाहिए? std :: mt19937?
मान लें कि आप C ++ &lt;random&gt;सुविधाओं का उपयोग एक व्यावहारिक कार्यक्रम में करना चाहते हैं ("व्यावहारिक" की कुछ परिभाषा के लिए - यहाँ की बाधाएँ इस प्रश्न का एक प्रकार है)। आपको कोड इस तरह मिला है: int main(int argc, char **argv) { int seed = get_user_provided_seed_value(argc, argv); if …
21 c++  c++11  random 

4
टेम्पलेट प्रकार के सही निर्माता को कैसे कॉल करें?
निम्नलिखित कोड में, मैं टिप्पणी की गई रेखा को उसी तरह से कैसे काम कर सकता हूं जैसे कि इसके ठीक ऊपर की रेखा? मैं इसे एक सामान्य कोड बनाना चाहूंगा, जो किसी टेम्पलेट के उपयुक्त निर्माता को बुलाएगा Type। #include &lt;string&gt; #include &lt;iostream&gt; template &lt;typename Type&gt; struct Class { …

1
किसी सरणी के जीसीसी एकत्रीकरण को शून्य शून्य तत्वों सहित पूरी चीज़ को पहले क्यों भरा जाता है?
जीसीसी केवल शेष 96 पूर्णांक के बजाय जीरो के साथ पूरे सरणी को क्यों भरता है? गैर-शून्य इनिशियलाइज़र सभी सरणी के प्रारंभ में हैं। void *sink; void bar() { int a[100]{1,2,3,4}; sink = a; // a escapes the function asm("":::"memory"); // and compiler memory barrier // forces the compiler to …

5
C ++ में ऑपरेशन सेट करें (मौजूदा मूल्य अपडेट करें)
यहाँ मेरा कोड है: while (it!=s.end()) //here 's' is a set of stl and 'it' is iterator of set { *it=*it-sub; //'sub' is an int value it++; } मैं पुनरावृति द्वारा सेट के मान को अपडेट नहीं कर सकता। मैं सेट के सभी तत्व से पूर्णांक मान 'सब' घटाना चाहता …
21 c++ 

3
Unique_ptr <Derived> का अर्थ क्यों अनूठे_ptr <Base> से लिया जाता है?
मैंने निम्नलिखित कोड लिखा है जो कि unique_ptr&lt;Derived&gt;जहां unique_ptr&lt;Base&gt;अपेक्षित है वहां उपयोग करता है class Base { int i; public: Base( int i ) : i(i) {} int getI() const { return i; } }; class Derived : public Base { float f; public: Derived( int i, float f ) …

1
फ़ंक्शन तर्क के रूप में {} क्यों अस्पष्टता का कारण नहीं बनता है?
इस कोड पर विचार करें: #include &lt;vector&gt; #include &lt;iostream&gt; enum class A { X, Y }; struct Test { Test(const std::vector&lt;double&gt;&amp;, const std::vector&lt;int&gt;&amp; = {}, A = A::X) { std::cout &lt;&lt; "vector overload" &lt;&lt; std::endl; } Test(const std::vector&lt;double&gt;&amp;, int, A = A::X) { std::cout &lt;&lt; "int overload" &lt;&lt; std::endl; } …

1
क्या किसी थ्रेड को थूकने से मेमोरी ऑर्डर की गारंटी मिलती है?
मैं लगभग यही करना चाहता हूं: प्रारंभिक धागा: वैश्विक संस्करणों के लिए कुछ मान लिखें (वे फिर कभी नहीं लिखे जाएंगे) यह मध्यम रूप से बड़े डेटा (सरणियाँ, तार आदि) हो सकते हैं। बस नहीं बनाया जा सकता std::atomic&lt;&gt;। अन्य धागे स्पॉन अन्य सूत्र: वैश्विक स्थिति पढ़ें काम करो, आदि। …

3
दिए गए std को विभाजित करें :: दिए गए मानदंडों द्वारा प्रकार प्रकार
किसी दिए गए प्रकार से कैसे using V = std::variant&lt;bool, char, std::string, int, float, double, std::vector&lt;int&gt;&gt;; दो प्रकारों की घोषणा करें using V1 = std::variant&lt;bool, char, int, float, double&gt;; using V2 = std::variant&lt;std::string, std::vector&lt;int&gt;&gt;; कहाँ से V1सभी अंकगणितीय प्रकार शामिल हैं Vऔर V2सभी गैर अंकगणितीय प्रकार शामिल हैं V? V …
20 c++  c++17  std-variant 

1
ऑटो रिटर्न प्रकार का टेम्पलेट और अस्पष्टता
मेरे पास एक अतिभारित टेम्पलेट फ़ंक्शन है: template&lt;typename T1, typename T2&gt; auto overMax(T1 a, T2 b) { std::cout &lt;&lt; __FUNCSIG__ &lt;&lt; std::endl; return b &lt; a ? a : b; } template&lt;typename RT, typename T1, typename T2&gt; RT overMax(T1 a, T2 b) { std::cout &lt;&lt; __FUNCSIG__ &lt;&lt; std::endl; return b …

4
क्या std का उपयोग करना मान्य है :: std के साथ रूपांतरण :: back_inserter?
Cppreference में इसके लिए उदाहरण कोड है std::transform: std::vector&lt;std::size_t&gt; ordinals; std::transform(s.begin(), s.end(), std::back_inserter(ordinals), [](unsigned char c) -&gt; std::size_t { return c; }); लेकिन यह भी कहता है: std::transformunary_opया के आदेश आवेदन की गारंटी नहीं है binary_op। किसी फंक्शन को किसी सीक्वेंस-ऑर्डर में लागू करने के लिए या किसी फंक्शन को …

2
क्या तुच्छ वस्तु के लिए प्लेसमेंट को 'इस' पर नया कहना सुरक्षित है?
मुझे पता है कि यह सवाल कई बार पहले ही पूछा जा चुका था लेकिन मुझे इस विशेष मामले का जवाब नहीं मिला। मान लीजिए कि मेरे पास एक तुच्छ वर्ग है जो किसी भी संसाधन का मालिक नहीं है और उसके पास खाली विध्वंसक और डिफ़ॉल्ट निर्माता है। इसमें …

3
वेक्टर के वेक्टर में अपरिभाषित व्यवहार
यह कोड प्रतीत होता है कि अनधिकृत पूर्णांक की अपरिभाषित संख्या क्यों लिखता है? #include &lt;iostream&gt; #include &lt;vector&gt; using namespace std; int main() { for (int i : vector&lt;vector&lt;int&gt;&gt;{{77, 777, 7777}}[0]) cout &lt;&lt; i &lt;&lt; ' '; } मुझे उम्मीद थी कि आउटपुट होगा 77 777 7777। क्या यह कोड …
19 c++ 

2
int numeral -> सूचक रूपांतरण नियम
निम्नलिखित कोड पर विचार करें। void f(double p) {} void f(double* p) {} int main() { f(1-1); return 0; } MSVC 2017 यह संकलित नहीं करता है। यह एक अस्पष्ट अतिभारित कॉल है, जैसा 1-1कि वैसा ही है 0और इसलिए इसे परिवर्तित किया जा सकता है double*। अन्य चाल, जैसे …
19 c++  visual-c++  types 

3
c ++ लूप प्रिंट के लिए थ्रेड्स गलत मान प्रिंट करता है
मैं सी + + में मल्टी-थ्रेडिंग को समझने की कोशिश कर रहा हूं, लेकिन मैं इस समस्या में फंस गया हूं: अगर मैं थ्रेड को लूप में लॉन्च करता हूं तो वे गलत मान लेते हैं। यह कोड है: #include &lt;iostream&gt; #include &lt;list&gt; #include &lt;thread&gt; void print_id(int id){ printf("Hello from …

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