কম্পিউটার টিউটোরিয়াল

C++-এ স্ট্রাকচার vs ক্লাস (Structure vs class in C++)

প্রধান পার্থক্য

বিষয়ClassStruct
ডিফল্ট অ্যাক্সেস স্পেসিফায়ারprivatepublic
ডিফল্ট ইনহেরিটেন্সprivatepublic
কীওয়ার্ডclassstruct

উদাহরণ ১: ডিফল্ট অ্যাক্সেস

class MyClass { int x = 10; }; // x is private
struct MyStruct { int x = 10; }; // x is public

int main() {
    MyClass c; // c.x অ্যাক্সেসIBLE নয় (compile error)
    MyStruct s; cout << s.x; // 10 প্রিন্ট হবে
}

উদাহরণ ২: ইনহেরিটেন্স

class Base { public: int x = 10; };
class DerivedClass : Base {}; // private inheritance -> x inaccessible
struct DerivedStruct : Base {}; // public inheritance -> x accessible

int main() {
    DerivedClass dc; // dc.x error
    DerivedStruct ds; cout << ds.x; // 10
}

অন্য পার্থক্য: ফাংশনালিটি প্রায় সমান। কনভেনশন: ডেটা-ওনলি টাইপের জন্য struct, ইনভ্যারিয়েন্ট/বিবিধ মেথডসহ টাইপের জন্য class ব্যবহার করা হয়।

  1. C++-এ মাল্টিপল ইনহেরিট্যান্স

  2. C++-এ নেস্টেড ক্লাস

  3. C++-এ লোকাল ক্লাস

  4. C++ প্রোগ্রাম স্ট্রাকচার