একটি সম্ভাব্য পরিস্থিতি আছে যখন অন্য শ্রেণি / কাঠামোগত পদ্ধতিগুলি ব্যাপকভাবে ব্যবহার করা ঠিক হয় - যখন আপনার শ্রেণি / স্ট্রাক্ট ডেটার জন্য ধারক হয়। সাধারণত বাহ্যিক প্রসঙ্গ ছাড়াই আপনি এই ডেটাটি দিয়ে কিছু করতে পারেন।
এই ধরনের ক্লাসগুলি এখনও কিছু অভ্যন্তরীণ যুক্তি ধরে রাখতে পারে তবে প্রায়শই সেগুলি ধারক হিসাবে ব্যবহৃত হয়:
class YourUid {
public:
YourUid(int id_in_workplace_, int id_in_living_place_, DB* FBI_database, int id_in_FBI_database);
bool IsInvalidWorker() const { return id_in_workplace == consts::invalid_id_in_workplace; }
bool CanMessWith() const { return !FBI_database_.is_cool(id_in_FBI_database_); }
int id_in_workplace;
int id_in_living_place;
private:
int id_in_FBI_database_;
const DB* FBI_database_;
};
@ জ্যোলেট তার প্রবন্ধে এই নিবন্ধটি প্রমাণ করে যে আপনার অন্য শ্রেণীর সদস্যদের ব্যাপকভাবে ব্যবহার করা উচিত নয়, তবে সেখানে আমার কোডের উদাহরণের সাথে আরও বর্ণিত একটি পরিস্থিতি রয়েছে যা বর্ণনা করা হয়েছে:
দীর্ঘ পরামিতি তালিকা। প্রদত্ত পদ্ধতিতে আপনার প্রয়োজনীয় প্যারামিটারের সংখ্যা সীমাবদ্ধ করুন বা পরামিতিগুলিকে একত্রিত করতে কোনও অবজেক্ট ব্যবহার করুন।