C++-এ অবজেক্ট-ওরিয়েন্টেড প্রোগ্রামিং-এ ক্লাস এবং অবজেক্ট দুটি মূল কনসেপ্ট। নিচে পার্থক্য আলোচনা করা হলো।
ক্লাস (Class)
- কোডের বিল্ডিং ব্লক, যা OOP বাস্তবায়ন করে।
- ইউজার-ডিফাইনড টাইপ।
- ডেটা মেম্বার (ভেরিয়েবল) এবং মেম্বার ফাংশন (মেথড) ধারণ করে।
- অবজেক্ট তৈরি করার মাধ্যমে অ্যাক্সেস করা যায়।
- অবজেক্টের জন্য ব্লুপ্রিন্ট বা টেমপ্লেট।
classকীওয়ার্ড দিয়ে ডিক্লেয়ার করা হয়।
class Employee {
string name;
int age;
string title;
public:
void draw_salary() { ... }
void get_promotion() { ... }
};
অবজেক্ট (Object)
- ক্লাসের একটি ইনস্ট্যান্স (Instance)।
- ক্লাস ডিক্লেয়ার করলে মেমরি অ্যালোকেট হয় না। অবজেক্ট তৈরি হলে হয়।
- ক্লাসের সব অ্যাট্রিবিউটের জন্য মেমরি পাওয়া যায়।
- সিনট্যাক্স:
ClassName objectName; - ডট (.) অপারেটর দিয়ে মেম্বার অ্যাক্সেস:
obj.memberFunction() - পাবলিক মেম্বার বাইরের থেকে অ্যাক্সেসযোগ্য, প্রাইভেট মেম্বার নয়।
Employee emp1; // অবজেক্ট তৈরি emp1.draw_salary(); // মেম্বার ফাংশন কল
মূল পার্থক্য সারসংক্ষেপ
| ক্লাস | অবজেক্ট |
|---|---|
| টেমপ্লেট/ব্লুপ্রিন্ট | রিয়েল ইনস্ট্যান্স |
| মেমরি নেয় না | মেমরি নেয় |
| একবার ডিক্লেয়ার | একাধিক তৈরি করা যায় |
| লজিক্যাল এনটিটি | ফিজিক্যাল এনটিটি |