এই পোস্টে, আমরা C++ এ ব্যক্তিগত এবং সুরক্ষিত অ্যাক্সেস মডিফায়ারের মধ্যে পার্থক্য বুঝতে পারব।
ব্যক্তিগত অ্যাক্সেস মডিফায়ার
-
এগুলিকে 'ব্যক্তিগত' কীওয়ার্ড ব্যবহার করে ঘোষণা করা হয়, তারপরে একটি ':'।
-
তাদের ক্লাসের বাইরে অ্যাক্সেস করা যাবে না।
-
'প্রাইভেট' কীওয়ার্ড হল একটি অ্যাক্সেস মডিফায়ার যা নিশ্চিত করে যে ক্লাসের ভিতরের ফাংশন এবং অ্যাট্রিবিউটগুলি শুধুমাত্র ক্লাসের সদস্যদের দ্বারা অ্যাক্সেস করা হয় যেখানে তারা ঘোষণা করা হয়েছে।
-
শুধুমাত্র মেম্বার ফাংশন বা ফ্রেন্ড ফাংশনগুলিকে 'প্রাইভেট' হিসাবে লেবেল করা ডেটা অ্যাক্সেস করার অনুমতি দেওয়া হয়৷
উদাহরণ
#include <iostream> using namespace std; class base_class{ private: string my_name; int my_age; public: void getName(){ cout << "Enter the name... "; cin >> my_name; cout << "Enter the age... "; cin >> my_age; } void printIt(){ cout << "The name is : " << my_name << endl; cout << "The age is: " << my_age << endl; } }; int main(){ cout<<"An object of class is created"<< endl; base_class my_instance; my_instance.getName(); my_instance.printIt(); return 0; }
আউটপুট
/tmp/u5NtWSnX5A.o An object of class is created Enter the name... Jane Enter the age... 34 The name is : Jane The age is: 34
সুরক্ষিত অ্যাক্সেস মডিফায়ার
-
সুরক্ষিত অ্যাক্সেস মডিফায়ার ব্যক্তিগত অ্যাক্সেস সংশোধকের অনুরূপ।
-
তারা 'সুরক্ষিত' কীওয়ার্ড ব্যবহার করে ঘোষণা করা হয়, তারপর ':'।
-
'সুরক্ষিত' হিসাবে ঘোষণা করা ক্লাস সদস্যকে ক্লাসের বাইরে অ্যাক্সেস করা যাবে না।
-
যে শ্রেণীতে তারা ঘোষণা করা হয়েছে তার মধ্যেই তাদের অ্যাক্সেস করা যেতে পারে।
-
এগুলিকে একটি উদ্ভূত শ্রেণী দ্বারাও অ্যাক্সেস করা যেতে পারে যার অভিভাবক শ্রেণীতে 'সুরক্ষিত' সদস্য রয়েছে৷
-
উত্তরাধিকার ধারণার সাথে কাজ করার সময় এগুলি ব্যবহার করা হয়।
উদাহরণ
#include <iostream> using namespace std; class base_class{ private: string my_name; int my_age; protected: int my_salary; public: void getName(){ cout << "Enter the name... "; cin >> my_name; cout << "Enter the age... "; cin >> my_age; } void printIt(){ cout << "The name is : " << my_name << endl; cout << "The age is: " << my_age << endl; } }; class derived_class : public base_class{ private: string my_city; public: void set_salary(int val){ my_salary = val; } void get_data_1(){ getName(); cout << "Enter the city... "; cin >> my_city; } void print_it_1(){ cout << "The salary is: " << my_salary << endl; printIt(); cout << "The city is: " << my_city << endl; } }; int main(){ cout<<"Instance of derived class is being created.."<<endl; derived_class my_instance_2 ; my_instance_2.set_salary(100); my_instance_2.get_data_1(); my_instance_2.print_it_1(); return 0; }
আউটপুট
/tmp/u5NtWSnX5A.o Instance of derived class is being created.. Enter the name... Jane Enter the age... 23 Enter the city... NewYork The salary is: 100 The name is : Jane The age is: 23 The city is: NewYork