প্রশ্ন ট্যাগ «shared-ptr»

রেফারেন্স ভাগ করা মালিকানা প্রয়োগ করে স্মার্ট পয়েন্টার শ্রেণি গণনা করা হয়

2
কেন ভাগ করা_পিটর <ভিওড> আইনী, যখন অনন্য_প্টর <void> খারাপ-গঠিত?
প্রশ্নটি সত্যই শিরোনামে ফিট করে: আমি জানতে আগ্রহী যে এই পার্থক্যের প্রযুক্তিগত কারণটি কী, তবে যুক্তিও কি? std::shared_ptr&lt;void&gt; sharedToVoid; // legal; std::unique_ptr&lt;void&gt; uniqueToVoid; // ill-formed;

4
ভাগ করা_প্টর <ডেরাইভড> কে শেয়ারড_প্টর <বেস> হিসাবে পাস করা হচ্ছে
একটি বেস টাইপ shared_ptrগ্রহণ করে এমন কোনও ফাংশনে ডেরাইভেড টাইপটি পাস করার সর্বোত্তম পদ্ধতি কী shared_ptr? shared_ptrঅযথা অনুলিপি এড়াতে আমি সাধারণত রেফারেন্স দিয়ে পাস করি : int foo(const shared_ptr&lt;bar&gt;&amp; ptr); তবে আমি যদি কিছু করার চেষ্টা করি তবে এটি কাজ করে না int foo(const shared_ptr&lt;Base&gt;&amp; ptr); ... shared_ptr&lt;Derived&gt; bar = …

5
যুক্তি হিসাবে ভাগ করা পয়েন্টারগুলি পাস করা
যদি আমি একটি ভাগ করা পয়েন্টারে মোড়ানো কোনও বিষয় ঘোষণা করি: std::shared_ptr&lt;myClass&gt; myClassObject(new myClass()); তখন আমি এটি কোনও পদ্ধতির আর্গুমেন্ট হিসাবে পাস করতে চেয়েছিলাম: DoSomething(myClassObject); //the called method void DoSomething(std::shared_ptr&lt;myClass&gt; arg1) { arg1-&gt;someField = 4; } উপরেরগুলি কি কেবল শেয়ারড_পিটের রেফারেন্স গণনা বৃদ্ধি করে এবং সবকিছু দুর্দান্ত? বা এটি একটি …

3
কাস্টম বরাদ্দকারী দ্বারা বরাদ্দকৃত একটি শেয়ার্ড_প্টারের ডিলেটর মেমোরিতে সঞ্চয় করা আছে?
আমি বলার shared_ptrএকটি কাস্টম বরাদ্দকরণ সঙ্গে এবং একটি কাস্টম deleter। আমি স্ট্যান্ডার্ডে এমন কিছু খুঁজে পাচ্ছি না যেখানে মুছে ফেলা হবে কোথায় তা নিয়ে কথা বলবে: এটি কাস্টম বরাদ্দকারী মুছে ফেলার স্মৃতির জন্য ব্যবহৃত হবে এবং এটি বলে না যে এটি হবে না । এটি কি অনির্দিষ্ট বা আমি কেবল …
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.