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

C++-এ আর্গুমেন্ট-ডিপেনডেন্ট লুকআপ (ADL / Koenig Lookup) কী?

আর্গুমেন্ট-ডিপেনডেন্ট লুকআপ (ADL) হলো অনকোয়ালিফাইড ফাংশন নাম লুকআপের একটি প্রোটোকল। ফাংশন কল এক্সপ্রেশন (অপারেটর ওভারলোডিং সহ) এর আর্গুমেন্টগুলোর নেমস্পেসেও ফাংশন খুঁজে বের করা হয়।

উদাহরণ

namespace MyNamespace {
    class A {};
    void f(A &a, int i) {}
}

int main() {
    MyNamespace::A a;
    f(a, 0);  // MyNamespace::f কল হয় ADL-এর মাধ্যমে
}

এখানে f কল করার সময় আর্গুমেন্ট a-র টাইপ MyNamespace::A। তাই কম্পাইলার MyNamespace-এও f খুঁজে পায়।

এই কারণেই std::cout << "hello" কাজ করে - operator<< std নেমস্পেসে ডিফাইনড থাকে, আর ADL সেটি খুঁজে বের করে।

  1. সি/সি++-এ রি-এন্ট্রান্ট ফাংশন (Reentrant Function) কী?

  2. C++-এ log() ফাংশন

  3. C++-এ swap() ফাংশন

  4. লিনাক্সে C++-এর জন্য সেরা IDE কী?