C++ এ এটি কম্পাইল টাইম পলিমারফিজম সমর্থন করে। কম্পাইল টাইম পলিমরফিজমের উদাহরণ হল ফাংশন ওভারলোডিং এবং অপারেটর ওভারলোডিং৷
অপারেটর ওভারলোডিং জন্য কিছু নিয়ম আছে. এই নিয়মগুলি নীচের মত
-
শুধুমাত্র অন্তর্নির্মিত অপারেটর ওভারলোড করা যেতে পারে. যদি কিছু অপারেটর C++ এ উপস্থিত না থাকে, তাহলে আমরা তাদের ওভারলোড করতে পারি না।
-
অপারেটরদের আরিটি পরিবর্তন করা যাবে না
-
অপারেটরদের অগ্রাধিকার একই থাকে।
-
ওভারলোড করা অপারেটর ফাংশন কল অপারেটর“()” ছাড়া ডিফল্ট প্যারামিটার ধরে রাখতে পারে না।
-
আমরা অন্তর্নির্মিত ডেটা প্রকারের জন্য অপারেটরদের ওভারলোড করতে পারি না। কমপক্ষে একটি ব্যবহারকারীর সংজ্ঞায়িত ডেটা প্রকার থাকতে হবে।
-
অ্যাসাইনমেন্ট “=”, সাবস্ক্রিপ্ট “[]”, ফাংশন কল “()” এবং অ্যারো অপারেটর “->” এই অপারেটরদের অবশ্যই সদস্য ফাংশন হিসাবে সংজ্ঞায়িত করা উচিত, বন্ধু ফাংশন নয়।
-
কিছু অপারেটর যেমন অ্যাসাইনমেন্ট “=”, ঠিকানা “&” এবং কমা “,” ডিফল্টভাবে ওভারলোড হয়।