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

সি++-এ যেসব ফাংশন ওভারলোড করা যায় না


সি++-এ আমরা ফাংশন ওভারলোড করতে পারি। কিন্তু কখনও কখনও ওভারলোডিং সম্ভব নয়। এই বিভাগে আমরা দেখব কোন কোন পরিস্থিতিতে ফাংশন ওভারলোড করা যায় না।

  • যখন ফাংশন সিগনেচার একই থাকে, শুধু রিটার্ন টাইপ ভিন্ন থাকে, তখন ফাংশন ওভারলোড করা যায় না।

int my_func() { return 5; }
char my_func() { return 'd'; }
  • যখন একটি ক্লাসে সদস্য ফাংশনগুলো একই নাম এবং একই প্যারামিটার লিস্ট রাখে, তবে সেগুলো ওভারলোড করা যায় না।

class My_Class{
    static void func(int x) { /* কয়েকটি কাজ */ }
    void func(int x) { /* কিছু কাজ */ }
};
  • যখন প্যারামিটার ডিক্লেরেশন শুধু পয়েন্টার * এবং অ্যারে []-এ পার্থক্য রাখে, তবে সেগুলো একই মाना হয়।

int my_func(int *arr) { /* কিছু করুন */ }
int my_func(int arr[]) { /* কিছু করুন */ }
  • যখন প্যারামিটার ডিক্লেরেশন শুধু const বা volatile কোয়ালিফায়ারের উপস্থিতিতে পার্থক্য রাখে, তবে সেগুলো একই মানা হয়।

int my_func(int x) { /* কিছু করুন */ }
int my_func(const int x) { /* কিছু করুন */ }
  • যখন প্যারামিটার ডিক্লেরেশন শুধু তাদের ডিফল্ট আর্গুমেন্টে পার্থক্য রাখে, তবে সেগুলো সমতুল্য মाना হয়।

int my_func(int a, int b) { /* কিছু করুন */ }
int my_func(int a, int b = 50) { /* কিছু করুন */ }
  1. অ্যারেতে a+b+c=d হওয়া সর্বোচ্চ d বের করা (C++)

  2. C++-এ একটি দিয়ে দেয়া সংখ্যার অঙ্ক ব্যবহার করে সর্বোচ্চ সংখ্যা নির্ণয়

  3. C++-এ main() ফাংশন কি ওভারলোড করা যায়?

  4. C++-এ ওভারলোড করা যাবে না এমন অপারেটরগুলো