কম্পিউটার

C++ এ ফ্রেন্ড ক্লাস এবং ফাংশন


একটি ক্লাসের একটি বন্ধু ফাংশন সেই ক্লাসের সুযোগের বাইরে সংজ্ঞায়িত করা হয় তবে এটির ক্লাসের সমস্ত ব্যক্তিগত এবং সুরক্ষিত সদস্যদের অ্যাক্সেস করার অধিকার রয়েছে৷ যদিও বন্ধু ফাংশনগুলির প্রোটোটাইপগুলি ক্লাসের সংজ্ঞায় উপস্থিত হয়, বন্ধুরা সদস্য ফাংশন নয়৷

একটি বন্ধু একটি ফাংশন, ফাংশন টেমপ্লেট, বা সদস্য ফাংশন, বা একটি ক্লাস বা ক্লাস টেমপ্লেট হতে পারে, এই ক্ষেত্রে পুরো ক্লাস এবং এর সমস্ত সদস্য বন্ধু৷

কোনও ফাংশনকে ক্লাসের ফ্রেন্ড হিসেবে ঘোষণা করতে, ক্লাস ডেফিনিশনে ফাংশন প্রোটোটাইপের আগে কীওয়ার্ড ফ্রেন্ড দিয়ে নিচে লিখুন −

<প্রি>ক্লাস বক্স {ডবল প্রস্থ;পাবলিক:ডবল দৈর্ঘ্য; বন্ধু অকার্যকর প্রিন্ট প্রস্থ (বক্স বক্স); void setWidth(ডবল প্রস্থ);};

ক্লাস টু এর সকল সদস্য ফাংশনকে ক্লাস ওয়ানের বন্ধু হিসাবে ঘোষণা করতে, ক্লাস ওয়ানের সংজ্ঞায় নিম্নলিখিত ঘোষণাটি রাখুন −

বন্ধু ক্লাস ক্লাসটু;

উদাহরণ

#include  namespace ব্যবহার করে std;class Box { দ্বিগুণ প্রস্থ; সর্বজনীন:বন্ধু অকার্যকর প্রিন্ট প্রস্থ (বক্স বক্স); void setWidth( double width);};// Member function definitionvoid Box::setWidth( double wid ) { width =wid;}// Note:printWidth() কোন class.void printWidth( বক্স বক্স) এর সদস্য ফাংশন নয় { /* যেহেতু printWidth() বক্সের বন্ধু, এটি সরাসরি এই শ্রেণীর যেকোনো সদস্যকে অ্যাক্সেস করতে পারে */ cout <<"বক্সের প্রস্থ :" < 

আউটপুট

এটি আউটপুট দেবে −

বাক্সের প্রস্থ:10

যদিও ফাংশনটি ক্লাসের সদস্য ছিল না, এটি সরাসরি সেই ক্লাসের সদস্য ভেরিয়েবলগুলিতে অ্যাক্সেস করতে পারে। এটি নির্দিষ্ট পরিস্থিতিতে খুব দরকারী হতে পারে।



  1. C++ এ আর্লি বাইন্ডিং এবং লেট বাইন্ডিং

  2. C++ এ ব্যক্তিগত ও সুরক্ষিত সদস্য

  3. C++ এ ক্লাস এবং অবজেক্ট

  4. আপনার কখন C++ এ 'বন্ধু' ব্যবহার করা উচিত?