توابع درون خطی در ++C

تابع درون خطی (Inline) در ++C مفهومی قدرتمند است که معمولاً همراه با کلاس‌ها به کار می رود. اگر یک تابع درون خطی باشد، کامپایلر در زمان کامپایل،  یک کپی از کد تابع را در نقطه‌ی فراخوانی آن قرار می‌دهد.

هر گونه تغییر در یک تابع درون خطی نیازمند کامپایل مجدد همه‌ی توابع استفاده کننده از آن می‌باشد، زیرا کامپایلر باید کل کد را مجدداً جایگزین کند درغیراین صورت تغییرات اعمال نمی‌شود.

برای درون خطی کردن یک تابع، کلیدواژه inline را پیش از نام تابع بگذارید و تعریف تابع را پیش از هرگونه فراخوانی آن قرار دهید. در صورتی که تابع تعریف شده بیش از یک خط باشد، کامپایلر می‌تواند عبارت inline را نادیده بگیرد.

تعریف یک تابع درون یک کلاس، درون خطی می‌باشد، حتی اگر از کلیدواژه inline استفاده نشود.

در مثال زیر از توابع درون خطی برای برگرداندن ماکزیمم دو عدد استفاده می‌شود.

#include <iostream>
 
using namespace std;

inline int Max(int x, int y) {
   return (x > y)? x : y;
}

// Main function for the program
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

منبع: ترجمه از سایت tutorialspoint.com

اگر این نوشته‌ برایتان مفید بود لطفا کامنت بنویسید.

مطالعه دیگر جلسات این آموزش<< جلسه قبلی                    جلسه بعدی >>

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *