smart-pointers पर टैग किए गए जवाब

एक सार डेटा प्रकार जो अतिरिक्त सुविधाओं को प्रदान करते समय एक संकेतक को अनुकरण करता है, जैसे कि स्वचालित कचरा संग्रह या सीमा जाँच


17
क्या सरणी के साथ unique_ptr के लिए कोई उपयोग है?
std::unique_ptr उदाहरण के लिए, सरणियों का समर्थन है: std::unique_ptr<int[]> p(new int[10]); लेकिन क्या इसकी जरूरत है? शायद यह उपयोग करने के लिए अधिक सुविधाजनक है std::vectorया std::array। क्या आपको उस निर्माण के लिए कोई उपयोग मिलता है?

4
मैं कब किस तरह के सूचक का उपयोग करता हूं?
ठीक है, इसलिए पिछली बार जब मैंने जीवित रहने के लिए C ++ लिखा std::auto_ptrथा , तो सभी std lib उपलब्ध थे, और boost::shared_ptrसभी क्रोध थे। मैं वास्तव में प्रदान किए गए अन्य स्मार्ट पॉइंटर प्रकार बूस्ट में कभी नहीं देखा। मैं समझता हूं कि C ++ 11 अब प्रदान …

4
स्मार्ट संकेत (बढ़ावा) समझाया
निम्नलिखित बिंदुओं के बीच अंतर क्या है? जब आप उत्पादन कोड में प्रत्येक पॉइंटर का उपयोग करते हैं, तो बिल्कुल भी? उदाहरण की सराहना की जाएगी! scoped_ptr shared_ptr weak_ptr intrusive_ptr क्या आप उत्पादन कोड में बढ़ावा का उपयोग करते हैं?

2
मैं वेक्टर में एक यूनिक_प्टर को क्यों नहीं पुश कर सकता / सकती हूं?
इस कार्यक्रम में क्या गलत है? #include <memory> #include <vector> int main() { std::vector<std::unique_ptr<int>> vec; int x(1); std::unique_ptr<int> ptr2x(&x); vec.push_back(ptr2x); //This tiny command has a vicious error. return 0; } त्रुटि: In file included from c:\mingw\bin\../lib/gcc/mingw32/4.5.0/include/c++/mingw32/bits/c++allocator.h:34:0, from c:\mingw\bin\../lib/gcc/mingw32/4.5.0/include/c++/bits/allocator.h:48, from c:\mingw\bin\../lib/gcc/mingw32/4.5.0/include/c++/memory:64, from main.cpp:6: c:\mingw\bin\../lib/gcc/mingw32/4.5.0/include/c++/bits/unique_ptr.h: In member function 'void __gnu_cxx::new_allocator<_Tp>::construct(_Tp*, const _Tp&) …

6
C ++ में RAII और स्मार्ट पॉइंटर्स
C ++ के साथ अभ्यास में, RAII क्या है , स्मार्ट पॉइंटर्स क्या हैं , ये प्रोग्राम में कैसे लागू किए जाते हैं और स्मार्ट पॉइंटर्स के साथ RAII का उपयोग करने के क्या फायदे हैं?
193 c++  smart-pointers  raii 

4
std :: auto_ptr से std :: unique_ptr
नए मानक आने के साथ (और कुछ कंपाइलरों में पहले से मौजूद पार्ट्स), नए प्रकार के std::unique_ptrलिए एक प्रतिस्थापन माना जाता है std::auto_ptr। क्या उनका उपयोग वास्तव में ओवरलैप होता है (इसलिए मैं अपने कोड पर एक वैश्विक खोज / प्रतिस्थापन कर सकता हूं (यह नहीं कि मैं ऐसा करूंगा, …

2
कक्षा सदस्यों के लिए स्मार्ट पॉइंटर्स का उपयोग करना
मुझे C ++ 11 में कक्षा सदस्यों के रूप में स्मार्ट पॉइंटर्स के उपयोग को समझने में परेशानी हो रही है। मैंने स्मार्ट पॉइंटर्स के बारे में बहुत कुछ पढ़ा है और मुझे लगता है कि मुझे समझ में नहीं आता कि कैसे unique_ptrऔर सामान्य रूप से काम करता shared_ptr/ …

8
C ++ लाइब्रेरी और फ्रेमवर्क कभी स्मार्ट पॉइंटर्स का उपयोग क्यों नहीं करते हैं?
मैंने कुछ लेखों में पढ़ा कि कच्चे पॉइंटर्स का उपयोग लगभग कभी नहीं किया जाना चाहिए। इसके बजाय उन्हें हमेशा स्मार्ट पॉइंटर्स के अंदर लपेटना चाहिए, चाहे वह स्कोप हो या शेयर्ड पॉइंटर्स। हालाँकि, मैंने देखा कि बूस्ट जैसे Qt, wxWidgets और पुस्तकालयों के फ्रेमवर्क कभी वापस नहीं आते हैं …

6
मैं std क्यों करूँगा :: एक std ले जाएँ :: साझा किया गया?
मैं क्लैंग स्रोत कोड के माध्यम से देख रहा हूं और मुझे यह स्निपेट मिला: void CompilerInstance::setInvocation( std::shared_ptr<CompilerInvocation> Value) { Invocation = std::move(Value); } मैं क्यों std::moveएक करना चाहते हैं std::shared_ptr? क्या साझा संसाधन पर स्वामित्व स्थानांतरित करने का कोई बिंदु है? मैं इसके बजाय ऐसा क्यों नहीं करूंगा? void …


3
क्या सी ++ स्मार्ट सूचक कार्यान्वयन उपलब्ध हैं?
तुलना, पेशेवरों, विपक्ष, और जब उपयोग करने के लिए? यह एक कचरा संग्रह धागे से एक स्पिन-ऑफ है जहां मैंने जो सोचा था वह एक सरल उत्तर था कुछ विशिष्ट स्मार्ट पॉइंटर कार्यान्वयन के बारे में बहुत सारी टिप्पणियां उत्पन्न हुईं, इसलिए यह एक नया पोस्ट शुरू करने के लायक …

11
स्मार्ट संकेत: वस्तु का मालिक कौन है? [बन्द है]
यहां क्या पूछा जा रहा है, यह बताना मुश्किल है। यह प्रश्न अस्पष्ट, अस्पष्ट, अपूर्ण, अति व्यापक या अलंकारिक है और इसका वर्तमान रूप में यथोचित उत्तर नहीं दिया जा सकता है। इस प्रश्न को स्पष्ट करने में मदद के लिए ताकि इसे फिर से खोला जा सके, सहायता केंद्र …

4
कहां साझा किया गया है?
मैं अभी बहुत निराश हूं कि कई घंटों के बाद यह पता लगाने की कोशिश कर रहा है कि साझा कहां स्थित है। मैं shared_ptr(और काम करने के लिए) शीर्षकों को शामिल करने के लिए कोई भी उदाहरण नहीं दिखा रहा हूं जो पूरा कोड दिखाता है । बस बताते …

5
C ++ में सामान्य पॉइंटर्स की तुलना में स्मार्ट पॉइंटर्स का ओवरहेड कितना है?
C ++ 11 में सामान्य पॉइंटर्स की तुलना में स्मार्ट पॉइंटर्स का ओवरहेड कितना है? दूसरे शब्दों में, अगर मैं स्मार्ट पॉइंटर्स का उपयोग करता हूं तो क्या मेरा कोड धीमा होने वाला है, और यदि हां, तो कितना धीमा है? विशेष रूप से, मैं C ++ 11 std::shared_ptrऔर के …

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