কিভাবে ভার্চুয়াল উত্তরাধিকার হীরা সমস্যা সমাধান করে?
কিভাবে ভার্চুয়াল উত্তরাধিকার হীরা সমস্যা সমাধান করে?

ভিডিও: কিভাবে ভার্চুয়াল উত্তরাধিকার হীরা সমস্যা সমাধান করে?

ভিডিও: কিভাবে ভার্চুয়াল উত্তরাধিকার হীরা সমস্যা সমাধান করে?
ভিডিও: OOPS-এ C++ ডায়মন্ড সমস্যা, উদাহরণ সহ ভার্চুয়াল ইনহেরিটেন্স ব্যবহার করে সমাধান 2024, এপ্রিল
Anonim

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

এ প্রসঙ্গে উত্তরাধিকার সূত্রে হীরার সমস্যা কী?

দ্য হীরা সমস্যা ” একটি অস্পষ্টতা যা একাধিককে অনুমতি দেওয়ার ফলস্বরূপ দেখা দিতে পারে উত্তরাধিকার . এটি একটি গুরুতর সমস্যা ভাষার জন্য (যেমন C++) যেগুলি একাধিক করার অনুমতি দেয় উত্তরাধিকার রাষ্ট্রের ইনজাভা, তবে একাধিক উত্তরাধিকার ক্লাসের জন্য অনুমোদিত নয়, শুধুমাত্র ইন্টারফেসের জন্য, এবং এতে স্টেট নেই।

পরবর্তীকালে, প্রশ্ন হল, কীভাবে একটি ভার্চুয়াল বেস ক্লাস উত্তরাধিকারে সহায়তা করে? ভার্চুয়াল বেস ক্লাস স্থান বাঁচাতে এবং অস্পষ্টতা এড়াতে একটি উপায় অফার করুন ক্লাস শ্রেণীবিন্যাস যা একাধিক উত্তরাধিকার ব্যবহার করে। যখন একটি বেস ক্লাস একটি হিসাবে নির্দিষ্ট করা হয় ভার্চুয়ালবেস , এটি একটি পরোক্ষ হিসাবে কাজ করতে পারে ভিত্তি এর ডেটা সদস্যদের নকল ছাড়াই একাধিকবার।

আরও জেনে নিন, ভার্চুয়াল পাবলিক ইনহেরিটেন্স কী?

ভার্চুয়াল উত্তরাধিকার একটি C++ কৌশল যা একটি বেস ক্লাসের সদস্য ভেরিয়েবলের শুধুমাত্র একটি কপি নিশ্চিত করে উত্তরাধিকারসূত্রে প্রাপ্ত নাতি-নাতনি প্রাপ্ত ক্লাস দ্বারা। এই বৈশিষ্ট্যটি একাধিক জন্য সবচেয়ে দরকারী উত্তরাধিকার , এটা তোলে হিসাবে অপার্থিব ডেরাইভিং ক্লাস এবং এটি থেকে উদ্ভূত সমস্ত ক্লাসের জন্য একটি সাধারণ সাবজেক্টকে বেস করুন।

কিভাবে ইন্টারফেস হীরা সমস্যা সমাধান করে?

কিভাবে করে একটি ব্যবহার করে ইন্টারফেস জাভাতে সমাধান দ্য হীরা সমস্যা ? অতএব, যদি দুই ইন্টারফেস একই পদ্ধতির স্বাক্ষর রয়েছে এবং একটি শ্রেণী এই দুটি থেকে উত্তরাধিকার (জাভাতে প্রয়োগ) পেতে চায় ইন্টারফেস , উত্তরাধিকারী হওয়ার কোন "পদ্ধতি বডি" নেই, তাই " হীরা উত্তরাধিকার" সমস্যা এড়ানো হয়।

প্রস্তাবিত: