मुझे आश्चर्य है क्योंकि cbegin और cendC ++ 11 में पेश किए गए थे? ऐसे मामले क्या हैं जब इन तरीकों को कॉल करने से कॉन्स्टोड के ओवरलोड से फर्क पड़ता है beginऔर end?
तो वास्तव में ऐसा क्यों है कि इसे हमेशा कब्ज का उपयोग करने की सलाह दी जाती है? यह मुझे लगता है कि सी का उपयोग करके सी ++ में मदद से अधिक दर्द हो सकता है। लेकिन फिर, मैं अजगर दृष्टिकोण से इस पर आ रहा हूं: यदि आप …
मैंने कई बार पढ़ा है कि आपके C या C ++ कोड में कॉन्स्टेंस-शुद्धता को लागू करना न केवल स्थिरता के संबंध में एक अच्छा अभ्यास है, बल्कि यह आपके कंपाइलर को भी अनुकूलन करने की अनुमति दे सकता है। हालाँकि, मैंने पूरा विपरीत पढ़ा है, - यह कि यह …
Const-correctness का बिंदु एक ऐसे उदाहरण को देखने में सक्षम होना है जो उपयोगकर्ता द्वारा परिवर्तित या हटाया नहीं जा सकता है। कंपाइलर इस बात का समर्थन करता है कि जब आप किसी कॉस्ट फंक्शन के भीतर से कॉन्स्टिपेशन को तोड़ते हैं, या किसी कॉन्सेंट ऑब्जेक्ट के नॉन-कॉस्ट फ़ंक्शन का …
मान लीजिए कि मेरे पास एक कॉल करने योग्य प्रकार है: struct mutable_callable { int my_mutable = 0; int operator()() { // Not const return my_mutable++; } }; ध्यान दें कि mutable_callableएक गैर-कास्ट है operator()जो एक सदस्य चर को संशोधित करता है ..... अब मान लीजिए कि मैं std::functionअपने प्रकार …
मैं विरासत कोड के कुछ टुकड़े के लिए एक आवरण है। class A{ L* impl_; // the legacy object has to be in the heap, could be also unique_ptr A(A const&) = delete; L* duplicate(){L* ret; legacy_duplicate(impl_, &L); return ret;} ... // proper resource management here }; इस विरासत कोड …