কম্পিউটার

C++ এ তিনটির নিয়ম


C++ ব্যবহার করার সময় তিনটির নিয়ম হল একটি অঙ্গুষ্ঠের নিয়ম। এটি একটি ভাল অনুশীলনের নিয়ম যা বলে যে যদি আপনার ক্লাসের যে কোনোটির প্রয়োজন হয়

  • একটি কপি কনস্ট্রাক্টর,
  • একজন অ্যাসাইনমেন্ট অপারেটর,
  • বা একটি ধ্বংসকারী,

স্পষ্টভাবে সংজ্ঞায়িত করা হয়, তাহলে তাদের তিনটিরই প্রয়োজন হতে পারে।

কেন? এর কারণ, যদি আপনার ক্লাসের উপরোক্ত যেকোনো একটির প্রয়োজন হয়, তবে এটি গতিশীলভাবে বরাদ্দকৃত সংস্থানগুলি পরিচালনা করছে এবং সম্ভবত এটি সফলভাবে অর্জন করতে অন্যটির প্রয়োজন হবে। উদাহরণস্বরূপ, যদি আপনার একটি অ্যাসাইনমেন্ট অপারেটরের প্রয়োজন হয়, আপনি বর্তমানে রেফারেন্স দ্বারা অনুলিপি করা বস্তুর অনুলিপি তৈরি করবেন, তাই সম্পদ বরাদ্দ করা হচ্ছে। কপি করার জন্য আপনার কপি কনস্ট্রাক্টর এবং এই রিসোর্স মুক্ত করার জন্য ডেস্ট্রাক্টরের প্রয়োজন হবে।

1. কপি কনস্ট্রাক্টর − কম্পাইলার সরবরাহকৃত কপি কনস্ট্রাক্টর সমস্ত Foo ম্যানেজারের বৈশিষ্ট্যগুলির সদস্য-ভিত্তিক অনুলিপি করে। এটি অ্যাসাইনমেন্ট অপারেটরের মতো একই সমস্যা তৈরি করে।

২. অ্যাসাইনমেন্ট অপারেটর − যদি আপনি একটি প্রদান না করেন তাহলে কম্পাইলার একটি ডিফল্ট অ্যাসাইনমেন্ট অপারেটর তৈরি করে। ডিফল্ট অ্যাসাইনমেন্ট অপারেশন হল সদস্য-ভিত্তিক কপি ফাংশন এবং এটি একটি অগভীর অনুলিপি করে এবং একটি গভীর অনুলিপি নয়। এর ফলে মেমরি লিক, ভুল অ্যাসাইনমেন্টের মতো সমস্যা হতে পারে।

3. ধ্বংসকারী − যখন এই ম্যানেজার সুযোগের বাইরে চলে যায় তখন এটির পরিচালনা করা সমস্ত সংস্থান মুক্ত করা উচিত৷


  1. স্ট্রিং কপি করার জন্য C++ প্রোগ্রাম

  2. C++-এ তিনের নিয়ম বনাম পাঁচের নিয়ম?

  3. C++ এর রেফারেন্স সহ তিনের নিয়ম কি?

  4. সি++ এ অ্যাসাইনমেন্ট অপারেটর