এই বিভাগে আমরা C++-এ প্রাথমিক বাইন্ডিং এবং লেট বাইন্ডিং কী তা দেখব। বাইন্ডিং মানে ঠিকানায় শনাক্তকারীকে রূপান্তর করার প্রক্রিয়া। প্রতিটি ভেরিয়েবল এবং ফাংশনের জন্য এই বাঁধাই করা হয়। ফাংশনগুলির জন্য এটি কম্পাইলারের দ্বারা সঠিক ফাংশন সংজ্ঞার সাথে কলের সাথে মিলে যায়। বাইন্ডিং হয় কম্পাইলটাইমে বা রানটাইমে করা হয়।
আর্লি বাইন্ডিং
এটি কম্পাইল টাইম পলিমরফিজম। এখানে এটি সরাসরি ফাংশন কলের সাথে একটি ঠিকানা যুক্ত করে। ফাংশন ওভারলোডিংয়ের জন্য এটি প্রাথমিক বাঁধাইয়ের একটি উদাহরণ।
উদাহরণ
#include<iostream> using namespace std; class Base { public: void display() { cout<<" In Base class" <<endl; } }; class Derived: public Base { public: void display() { cout<<"In Derived class" << endl; } }; int main(void) { Base *base_pointer = new Derived; base_pointer->display(); return 0; }
আউটপুট
In Base class
লেট বাইন্ডিং
এটি রান টাইম পলিমরফিজম। এই ধরনের বাইন্ডিং-এ কম্পাইলার কোড যোগ করে যা রানটাইমে অবজেক্ট টাইপ শনাক্ত করে তারপর কলের সাথে রাইট ফাংশন সংজ্ঞার সাথে মেলে। এটি ভার্চুয়াল ফাংশন ব্যবহার করে অর্জন করা হয়।
উদাহরণ
#include<iostream> using namespace std; class Base { public: virtual void display() { cout<<"In Base class" << endl; } }; class Derived: public Base { public: void display() { cout<<"In Derived class" <<endl; } }; int main() { Base *base_pointer = new Derived; base_pointer->display(); return 0; }
আউটপুট
In Derived class