الدّالّة (10) - Inline Function

وقت القراءة: 3 دقائق 217 مشاهدة

الـ Inline Function في لغة C++ هي دالة يتم استبدال تعليماتها البرمجية عند نقطة الاستدعاء. هذا يعني أن الـ compiler ينسخ كود الـ inline function إلى دالة الاستدعاء، بدلاً من إنشاء تعليمات الاستدعاء.

تُستخدم الـ inline function عادةً للدوال الصغيرة التي يتم استدعاؤها بشكل متكرر. وهذا يمكن أن يحسن أداء البرنامج، كما أنه يلغي الحمل الزائد لاستدعاءات الدوال.

للإعلان عن inline function في C++، يمكنك استخدام inline كـ keyword قبل إعلان الدالة. على سبيل المثال:

#include <iostream>
using namespace std;

inline void p()
{
    cout << "hello" << endl;
}

int main()
{
    p();
    p();
    p();
    return 0;
}

inline void p()، يعرف inline function تسمى p(). لا تأخذ الدالة أي arguments وتقوم ببساطة بطباعة الكلمة "hello" على شاشة المخرجات، متبوعة بحرف السطر الجديد.

الأسطر الثلاث p();, p();، و p();، تستدعي الدالة p() ثلاث مرات.

عندما تقوم بكتابة هذا البرنامج وتشغيله، ستتم طباعة الناتج التالي على شاشة المخرجات:

hello
hello
hello

من المهم ملاحظة أن الـ compiler غير ملزم بتضمين دالة، حتى لو تم الإعلان عنها على أنها inlined. قد يختار الـ compiler عدم تضمين دالة إذا كانت ضخمة جدًا أو إذا تم استدعاؤها بشكل غير مباشر.

فيما يلي بعض فوائد استخدام الـ inline functions:

  • تحسين الأداء: يمكن للـ inline functions تحسين أداء البرنامج عن طريق التخلص من الحمل الزائد لاستدعاءات الدوال.
  • تقليل حجم البرنامج: يمكن للـ inline functions تقليل حجم التعليمات البرمجية للبرنامج عن طريق إزالة الحاجة إلى إنشاء تعليمات برمجية منفصلة لكل استدعاء دالة.
  • زيادة إمكانية القراءة: يمكن للـ inline functions أن تجعل التعليمات البرمجية أكثر قابلية للقراءة من خلال التخلص من الحاجة إلى التنقل ذهابًا وإيابًا بين الدوال المختلفة.

ومع ذلك، هناك أيضًا بعض العيوب المحتملة لاستخدام الـ inline functions:

  • زيادة وقت الترجمة: يمكن للـ inline functions أن تزيد من وقت الترجمة للبرنامج، حيث يحتاج المترجم إلى نسخ رمز الـ inline functions في كل دالة استدعاء.
  • زيادة حجم البرنامج: إذا تم استدعاءinline function بشكل متكرر، فيمكن أن يؤدي ذلك إلى زيادة حجم الكود الخاص بالبرنامج.
  • انخفاض قابلية الصيانة: يمكن للـ inline functions أن تجعل صيانة التعليمات البرمجية أكثر صعوبة، حيث أن التعليمات البرمجية الخاصة بالدالة المضمنة منتشرة في جميع أنحاء البرنامج.

بشكل عام، يمكن أن تكون الـ inline function أداة مفيدة لتحسين أداء التعليمات البرمجية وسهولة قراءتها. ومع ذلك، من المهم استخدامها بعناية، حيث يمكنها أيضًا زيادة وقت الترجمة وحجم التعليمات البرمجية للبرنامج.

فيما يلي بعض النصائح لاستخدام الـ inline functions بفعالية:

  • تُستخدم الـ inline function عادةً للدوال الصغيرة التي يتم استدعاؤها بشكل متكرر.
  • تجنب تضمين الدوال الكبيرة جدًا أو التي يتم استدعاؤها بشكل غير مباشر.
  • استخدم inline كـ keyword باستمرار، حتى يتمكن الـ compiler من اتخاذ قرارات مستنيرة حول ما إذا كان سيتم تضمين دالة أم لا.
  • قم بتوثيق التعليمات البرمجية الخاصة بك بوضوح، حتى يفهم المطورون الآخرون كيف ولماذا يتم استخدام الـ inline functions.
مشاركة هذا

الدّالّة (10) - Inline Function

Or copy link

المحتوى
Arabic