প্রশ্ন ট্যাগ «move-semantics»

12
চলন্ত শব্দার্থবিজ্ঞান কি?
আমি সবে স্কট মায়ার্স এর সাথে সি ++ 0 এক্স সম্পর্কিত সফ্টওয়্যার ইঞ্জিনিয়ারিং রেডিও পডকাস্ট সাক্ষাত্কারটি শুনেছি । নতুন বৈশিষ্ট্যগুলির বেশিরভাগটি আমার কাছে উপলব্ধি করেছে এবং আমি বাদে এখন সত্যিই C ++ 0x সম্পর্কে উচ্ছ্বসিত। আমি এখনও সরানো শব্দার্থবিজ্ঞান পাই না ... এটি ঠিক কী?

7
পুশ_ব্যাক বনাম এমপ্লে_ব্যাক
আমি push_backএবং এর মধ্যে পার্থক্য সম্পর্কে কিছুটা বিভ্রান্ত হয়ে পড়েছি emplace_back। void emplace_back(Type&& _Val); void push_back(const Type& _Val); void push_back(Type&& _Val); যেমন আছে একটি push_back জমিদার একটি rvalue রেফারেন্স আমি বেশ কি উদ্দেশ্য দেখতে না গ্রহণ emplace_backহয়ে?


6
সি ++ 11 টি মূল্যায়ন এবং পদার্থবিজ্ঞানের বিভ্রান্তি (রিটার্ন স্টেটমেন্ট)
আমি মূলসূত্রের রেফারেন্সগুলি বোঝার চেষ্টা করছি এবং সি ++ 11 এর শব্দার্থবিজ্ঞান স্থানান্তর করব। এই উদাহরণগুলির মধ্যে পার্থক্য কী, এবং এর মধ্যে কোনটি ভেক্টর অনুলিপি করতে যাচ্ছে না? প্রথম উদাহরণ std::vector<int> return_vector(void) { std::vector<int> tmp {1,2,3,4,5}; return tmp; } std::vector<int> &&rval_ref = return_vector(); দ্বিতীয় উদাহরণ std::vector<int>&& return_vector(void) { std::vector<int> tmp …

3
"এটির জন্য মূল রেফারেন্স" কী?
ঝাঁকুনির সি ++ 11 স্থিতি পৃষ্ঠায় "এটির জন্য মূল্যের রেফারেন্স" নামে একটি প্রস্তাব এসেছে । আমি মূল্যের রেফারেন্সগুলি সম্পর্কে বেশ কিছুটা পড়েছি এবং সেগুলি বুঝতে পেরেছি, তবে আমি মনে করি না যে আমি এই সম্পর্কে জানি। পদগুলি ব্যবহার করে আমি ওয়েবে প্রচুর সংস্থানও খুঁজে পাইনি। পৃষ্ঠায় প্রস্তাবের কাগজের একটি লিঙ্ক …

2
আধুনিক সি ++ কী বিনামূল্যে আপনাকে পারফরম্যান্স পেতে পারে?
কখনও কখনও দাবি করা হয় যে সি ++ 11/14 আপনাকে কেবল সি ++ 98 কোডটি সংকলন করার পরেও একটি পারফরম্যান্স উত্সাহ পেতে পারে। ন্যায়সঙ্গততা সাধারণত সরানো শব্দার্থবিরোধী লাইনের সাথে থাকে, কারণ কিছু ক্ষেত্রে রাল্যু কনস্ট্রাক্টরগুলি স্বয়ংক্রিয়ভাবে উত্পন্ন হয় বা এখন এসটিএলের অংশ। এখন আমি ভাবছি যে এই মামলাগুলি আসলে ইতিমধ্যে …

6
আমি কেন স্টাড :: একটি স্টাডি :: শেয়ারড_পিটার স্থানান্তর করব?
আমি কলং উত্স কোডটি সন্ধান করেছি এবং আমি এই স্নিপেটটি পেয়েছি: void CompilerInstance::setInvocation( std::shared_ptr<CompilerInvocation> Value) { Invocation = std::move(Value); } কেন আমি চায় std::moveএকটি std::shared_ptr? শেয়ারড রিসোর্সে মালিকানা স্থানান্তর করার কোনও পয়েন্ট আছে কি? আমি কেবল এর পরিবর্তে এটি করব না কেন? void CompilerInstance::setInvocation( std::shared_ptr<CompilerInvocation> Value) { Invocation = Value; …

2
স্থানান্তরিত বস্তুর সাথে আমি কী করতে পারি?
স্ট্যান্ডার্ডটি কি কোনও জিনিস থেকে সরিয়ে নিয়ে যাওয়ার পরে আমি কী করতে পারি তা সুনির্দিষ্টভাবে সংজ্ঞায়িত করে? আমি ভাবতাম যে আপনি সরানো থেকে অবজেক্টের সাথে যা করতে পারেন তা হ'ল এটি ধ্বংস করে দিচ্ছেন, তবে এটি পর্যাপ্ত হবে না। উদাহরণস্বরূপ, swapস্ট্যান্ডার্ড লাইব্রেরিতে সংজ্ঞায়িত হিসাবে ফাংশন টেম্পলেটটি নিন : template <typename …

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


1
ধার করা বিষয়বস্তু থেকে সরানো যায় না / ভাগ করা রেফারেন্সের পিছনে যেতে পারে না
আমি ত্রুটি বুঝতে পারি না cannot move out of borrowed content। আমি এটি বহুবার পেয়েছি এবং আমি সর্বদা এটি সমাধান করেছি, তবে কেন আমি বুঝতে পারি নি। উদাহরণ স্বরূপ: for line in self.xslg_file.iter() { self.buffer.clear(); for current_char in line.into_bytes().iter() { self.buffer.push(*current_char as char); } println!("{}", line); } ত্রুটি উত্পাদন করে: …

4
সি ++ 11 এ কোন প্রকারকে অচল অস্থাবর কখন করবেন?
আমি আমার অনুসন্ধানের ফলাফলগুলিতে এটি প্রদর্শিত না হয়ে অবাক হয়েছি, আমি ভেবেছিলাম যে সি ++ 11 তে পদক্ষেপ পদার্থের দক্ষতাটি দেখে কেউ আগে এটি জিজ্ঞাসা করেছিল: আমার কখন (বা এটি আমার পক্ষে ভাল ধারণা) সি ++ 11 এ অবিচলিত বর্গ তৈরি করতে হবে? ( বিদ্যমান কোডের সাথে সামঞ্জস্যতা ইস্যু ছাড়া …

6
অ্যাসাইনমেন্ট অপারেটর এবং `যদি (এটি! = & আরএসএস)` সরান `
কোনও শ্রেণীর অ্যাসাইনমেন্ট অপারেটরে আপনাকে সাধারণত যাচাই করা অবজেক্টটি ইনভোকেজ অবজেক্ট কিনা তা পরীক্ষা করে দেখার দরকার হয় যাতে আপনি জিনিসগুলি স্ক্রু আপ না করেন: Class& Class::operator=(const Class& rhs) { if (this != &rhs) { // do the assignment } return *this; } মুভ অ্যাসাইনমেন্ট অপারেটরের জন্য আপনার কি একই …

3
লুপের জন্য পরিসীমা ভিত্তিক ফরওয়ার্ডিং রেফারেন্সগুলি ব্যবহার করে কী সুবিধা হবে?
const auto&আমি কেবল পঠনযোগ্য ক্রিয়াকলাপ সম্পাদন করতে চাইলে যথেষ্ট হবে। তবে আমি bুকে পড়েছি for (auto&& e : v) // v is non-const সম্প্রতি কয়েকবার। এটি আমাকে অবাক করে তোলে: এটা কি সম্ভব যে কিছু অস্পষ্ট কোণার ক্ষেত্রে ফরওয়ার্ডিং রেফারেন্সগুলি ব্যবহার করার ক্ষেত্রে কিছুটা পারফরম্যান্স সুবিধা রয়েছে auto&বা এর তুলনায় …

2
স্টাড :: :: সরানো () কীভাবে আরভ্যালুতে মান স্থানান্তর করে?
আমি নিজেকে খুঁজে পেয়েছি সম্পূর্ণরূপে এর যুক্তি বুঝতে পারছি না std::move()। প্রথমদিকে, আমি এটি গুগল করেছিলাম তবে মনে হয় কেবল কীভাবে ব্যবহার করতে হবে std::move()তার নথিতে রয়েছে , এর কাঠামোটি কীভাবে কাজ করে তা নয়। আমি বলতে চাইছি, টেমপ্লেট সদস্যের ফাংশনটি কী তা আমি জানি তবে যখন আমি std::move()ভিএস 2010-এ …

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