একটি অনুলিপি নির্মাণকারী অন্য কিছু অবজেক্টের ডেটা থেকে পূর্বনির্দেশিত বস্তুটি আরম্ভ করার জন্য ব্যবহৃত হয় ।
A(const A& rhs) : data_(rhs.data_) {}
উদাহরণ স্বরূপ:
A aa;
A a = aa; //copy constructor
পূর্ববর্তী প্রাথমিক অবজেক্টের ডেটা অন্য কিছু সামগ্রীর ডেটার সাথে প্রতিস্থাপন করতে একটি অ্যাসাইনমেন্ট অপারেটর ব্যবহার করা হয় ।
A& operator=(const A& rhs) {data_ = rhs.data_; return *this;}
উদাহরণ স্বরূপ:
A aa;
A a;
a = aa; // assignment operator
আপনি অনুলিপি নির্মাণ প্লাস অ্যাসাইনমেন্ট দ্বারা অনুলিপি নির্মাণ প্রতিস্থাপন করতে পারে, তবে এটি কম দক্ষ হবে।
(একটি পার্শ্ব দ্রষ্টব্য হিসাবে: উপরের আমার বাস্তবায়নগুলি হ'ল সংকলক আপনাকে নিখরচায় যা অনুদান দেয় তাই ম্যানুয়ালি এগুলি প্রয়োগ করার পক্ষে কোনও অর্থ হবে না these আপনার যদি এই দুটির একটি থাকে তবে সম্ভবত আপনি নিজে কিছু সংস্থান পরিচালনা করছেন। যে ক্ষেত্রে, প্রতি তিন রুল , আপনি খুব সম্ভবত অন্য এক প্লাস একটি বিনাশকারী প্রয়োজন হবে।)