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

স্টাড :: অনন্য_পিটার একটি স্মার্ট পয়েন্টার যা কোনও পয়েন্টারের মাধ্যমে কোনও সামগ্রীর একমাত্র মালিকানা ধরে রাখে। অনন্য_পিটিআর অনুলিপিযোগ্য বা অনুলিপিযোগ্য নয়, অনন্য_প্টারের দুটি উদাহরণ একই বস্তু পরিচালনা করতে পারে না।

6
আমি কীভাবে কোনও কনস্ট্রাক্টর বা কোনও ফাংশনে অনন্য_আপনার যুক্তিটি পাস করব?
আমি সি ++ 11 এ শব্দার্থক স্থানান্তর করতে নতুন এবং আমি কীভাবে unique_ptrকনস্ট্রাক্টর বা ফাংশনগুলিতে পরামিতিগুলি পরিচালনা করতে পারি তা খুব ভালভাবে জানি না । এই শ্রেণীর রেফারেন্সিং নিজেকে বিবেচনা করুন: #include <memory> class Base { public: typedef unique_ptr<Base> UPtr; Base(){} Base(Base::UPtr n):next(std::move(n)){} virtual ~Base(){} void setNext(Base::UPtr n) { next …

5
ফাংশন থেকে অনন্য_পিটার ফিরে আসা
unique_ptr<T>অনুলিপি নির্মাণের অনুমতি দেয় না, পরিবর্তে এটি পদক্ষেপ পদার্থকে সমর্থন করে। তবুও, আমি unique_ptr<T>একটি ফাংশন থেকে একটি ফেরত দিতে এবং ফেরত মানটি একটি ভেরিয়েবলের জন্য বরাদ্দ করতে পারি। #include <iostream> #include <memory> using namespace std; unique_ptr<int> foo() { unique_ptr<int> p( new int(10) ); return p; // 1 //return move( p …
367 c++  c++11  unique-ptr 

8
এসটিডি :: অনন্য_পিটার <টি> টি এর সম্পূর্ণ সংজ্ঞা জানতে প্রয়োজনীয়?
আমার একটি শিরোনামে এমন কিছু কোড রয়েছে যা দেখতে এই জাতীয় দেখাচ্ছে: #include &lt;memory&gt; class Thing; class MyClass { std::unique_ptr&lt; Thing &gt; my_thing; }; আমি যদি এই Thingশিরোনামটিকে এমন কোনও সিপিতে অন্তর্ভুক্ত করি যা টাইপ সংজ্ঞাটি অন্তর্ভুক্ত করে না , তবে এটি ভিএস 2010-এসপি 1 এর অধীন সংকলন করে না: …

17
অ্যারে সহ ইউনিক_পিটারের কোনও ব্যবহার আছে?
std::unique_ptr উদাহরণস্বরূপ অ্যারেগুলির জন্য সমর্থন রয়েছে: std::unique_ptr&lt;int[]&gt; p(new int[10]); তবে এটা কি দরকার? সম্ভবত এটি ব্যবহার করা আরও সুবিধাজনক std::vectorবা std::array। আপনি কি এই নির্মাণের জন্য কোনও ব্যবহার খুঁজে পান?

2
আমি কেন কোনও ভেক্টরে একটি অনন্য_প্টরকে ধাক্কা দিতে পারি না?
এই প্রোগ্রামে কি ভুল? #include &lt;memory&gt; #include &lt;vector&gt; int main() { std::vector&lt;std::unique_ptr&lt;int&gt;&gt; vec; int x(1); std::unique_ptr&lt;int&gt; ptr2x(&amp;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&lt;_Tp&gt;::construct(_Tp*, const _Tp&amp;) [with _Tp …

6
Make_unique এবং নিখুঁত ফরোয়ার্ডিং
std::make_uniqueমানক সি ++ 11 লাইব্রেরিতে কেন কোনও ফাংশন টেম্পলেট নেই ? আমি খুজি std::unique_ptr&lt;SomeUserDefinedType&gt; p(new SomeUserDefinedType(1, 2, 3)); কিছুটা ভার্জোজ। নিম্নলিখিত খুব ভাল না হবে? auto p = std::make_unique&lt;SomeUserDefinedType&gt;(1, 2, 3); এটি দুর্দান্তভাবে লুকায় newএবং কেবল একবারে টাইপের উল্লেখ করে। যাইহোক, বাস্তবায়নের জন্য এখানে আমার প্রচেষ্টা make_unique: template&lt;typename T, typename... …

6
std :: একটি অসম্পূর্ণ টাইপ সহ অনন্য_পিটার সংকলন করবে না
আমি এর সাথে পিম্পল-আইডিয়ামটি ব্যবহার করছি std::unique_ptr: class window { window(const rectangle&amp; rect); private: class window_impl; // defined elsewhere std::unique_ptr&lt;window_impl&gt; impl_; // won't compile }; যাইহোক, আমি 304 লাইনটিতে একটি অসম্পূর্ণ প্রকারের বিষয়ে একটি সংকলন ত্রুটি পেয়েছি &lt;memory&gt;: sizeofএকটি অসম্পূর্ণ টাইপ ' uixx::window::window_impl' এর অবৈধ অ্যাপ্লিকেশন যতদূর আমি জানি, std::unique_ptrঅসম্পূর্ণ …

4
এসটিডি :: অটো_প্রেটার থেকে স্টাড :: অনন্য_পিটার
নতুন স্ট্যান্ডার্ড আসার সাথে (এবং কিছু সংকলক ইতিমধ্যে উপলব্ধ অংশ), নতুন ধরণের std::unique_ptrজন্য একটি প্রতিস্থাপন বলে মনে করা হয় std::auto_ptr। তাদের ব্যবহারগুলি কি ঠিক ওভারল্যাপ করে (তাই আমি আমার কোডটিতে একটি বিশ্বব্যাপী সন্ধান / প্রতিস্থাপন করতে পারি (আমি এটি করতাম তা নয়, তবে যদি আমি তা করতাম)) বা ডকুমেন্টেশন পড়া …

2
শ্রেণীর সদস্যদের জন্য স্মার্ট পয়েন্টার ব্যবহার করা
C ++ 11 এ শ্রেণীর সদস্য হিসাবে স্মার্ট পয়েন্টার ব্যবহার বুঝতে আমার সমস্যা হচ্ছে। আমি স্মার্ট পয়েন্টারগুলি সম্পর্কে অনেক কিছু পড়েছি এবং আমি মনে করি যে আমি কীভাবে unique_ptrএবং shared_ptr/ weak_ptrসাধারণভাবে কাজ করি তা বুঝতে পারি । আমি যা বুঝতে পারি না তা হ'ল আসল ব্যবহার। দেখে মনে হয় যে …

6
আমি কীভাবে একটি স্ট্যান্ড :: অনন্য_পিটার সদস্যের সাথে একটি কাস্টম মুছুন ব্যবহার করতে পারি?
আমার একটি অনন্য_পিটার সদস্য সহ একটি ক্লাস রয়েছে। class Foo { private: std::unique_ptr&lt;Bar&gt; bar; ... }; বারটি একটি তৃতীয় পক্ষের শ্রেণি যা একটি তৈরি () ফাংশন এবং একটি ধ্বংস () ফাংশন রাখে। যদি আমি std::unique_ptrএটির সাথে একটি স্ট্যান্ড একা ফাংশন ব্যবহার করতে চাই তবে আমি এটি করতে পারি: void foo() …

4
স্ট্যান্ড :: মেক_উইনিক এবং স্টাডি :: অনন্য_পিটারের সাথে নতুন সহ পার্থক্য
এর std::make_uniqueমতো কোনও দক্ষতার বেনিফিট রয়েছে std::make_shared? ম্যানুয়ালি নির্মাণের তুলনায় std::unique_ptr: std::make_unique&lt;int&gt;(1); // vs std::unique_ptr&lt;int&gt;(new int(1));

6
অনন্য_এসপিআর দিয়ে একটি শ্রেণীর জন্য কন্সট্রাক্টর অনুলিপি করুন
unique_ptrসদস্য ভেরিয়েবল থাকা শ্রেণীর জন্য আমি কীভাবে একটি অনুলিপি নির্মাণকারীকে বাস্তবায়ন করব ? আমি কেবল সি ++ 11 বিবেচনা করছি।
105 c++  c++11  unique-ptr 

2
সি ++ ১১ টি অনন্য_পিটার এবং ভাগ করা_পিটার কি একে অপরের ধরণের রূপান্তর করতে সক্ষম?
নেই সি ++ 11 মান গ্রন্থাগার A থেকে রূপান্তর করতে কোন উপযোগ প্রদান std::shared_ptrকরতে std::unique_ptr, অথবা বিপরীতভাবে ভাইস? এই নিরাপদ অপারেশন?

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

7
আমি কীভাবে একটি ফাংশনে স্ট্যান্ড :: অনন্য_পিটার পাস করতে পারি?
আমি কীভাবে std::unique_ptrকোনও কার্যক্রমে পাস করতে পারি ? আসুন আমাদের নীচের ক্লাসটি বলুন: class A { public: A(int val) { _val = val; } int GetVal() { return _val; } private: int _val; }; নিম্নলিখিতগুলি সংকলন করে না: void MyFunc(unique_ptr&lt;A&gt; arg) { cout &lt;&lt; arg-&gt;GetVal() &lt;&lt; endl; } int main(int …
97 c++  c++11  unique-ptr 

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.