ইনলাইন ফাংশন কী?
inline কীওয়ার্ড কম্পাইলারকে অনুরোধ করে যে ফাংশন কলের জায়গায় ফাংশনের বডি কপি করে দিতে (ফাংশন কল ওভারহেড কমাতে)। কম্পাইলার এই অনুরোধ উপেক্ষা করতে পারে যদি ফাংশন জটিল হয়।
সিনট্যাক্স এবং নিয়ম
inline return_type func(params) { ... }- ফাংশন ডেফিনিশন কল করার আগে দৃশ্যমান হতে হয় (হেডার ফাইলে রাখা ভালো)।
- ক্লাস ডেফিনিশন ভিতরে ডিফাইন করা ফাংশনগুলো ডিফল্টভাবে ইনলাইন।
উদাহরণ কোড
#include <iostream>
using namespace std;
inline int Max(int x, int y) {
return (x > y) ? x : y;
}
int main() {
cout << "Max(20,10): " << Max(20,10) << endl;
cout << "Max(0,200): " << Max(0,200) << endl;
cout << "Max(100,1010): " << Max(100,1010) << endl;
return 0;
}
আউটপুট
Max(20,10): 20 Max(0,200): 200 Max(100,1010): 1010
সতর্কতা: বড় ফাংশন ইনলাইন করলে কোড ব্লোট (code bloat) হয়, ক্যাশে মিস বাড়ে। ছোট, ঘন ঘন কল হওয়া ফাংশনগুলোর জন্য উপযুক্ত।