إعلان
تعلم الآن

C++ طريقة وضع باراميترات في الدالة ليس لها نوع محدد

في المثال التالي قمنا بتعريف الحرف E كنوع بيانات غير محدد.
بعدها قمنا بتعريف دالة إسمها printArray() عند استدعائها نمرر لها مصفوفة من أي نوع كان مع تمرير عدد عناصرها, فتقوم بطباعة جميع القيم الموجودة فيها.

مثال

main.cpp
#include <iostream>
using namespace std;

// و هو خاص بالدالة التي سنقوم بتعريفها بعده E هنا قمنا بتعريف نوع بيانات غير محدد قمنا بتسميته
template <typename E>

// length و حجم المصفوفة مكان الباراميتر arr عند استدعاءها نمرر لها مصفوفة من أي نوع مكان الباراميتر printArray هنا قمنا بتعريف دالة إسمها
void printArray(E arr[], int length)
{
    // على سطر واحد arr هنا قمنا بإنشاء حلقة تعرض جميع عناصر المصفوفة
    for(int i=0; i<length; i++)
    {
        cout << arr[i] << " ";
    }
	
	// بعد عرض جميع العناصر سيتم النزول على سطر جديد
    cout << endl;
}

// main() هنا قمنا بتعريف الدالة
int main()
{
	// هنا قمنا بتعريف ثلاث مصفوفات كل واحدة منهم تحتوي على نوع مختلف من البيانات
    int arr1[] = {1, 2, 3, 4, 5};
    char arr2[] = {'a', 'b', 'c', 'd', 'e'};
    string arr3[] = {"I'm", "learning" ,"C++", "in", "harmash.com"};

	// مع تحديد نوع كل مصفوفة سيتم تمريرها arr3 و arr2 و arr1 لطباعة قيم المصفوفات الثلاثة printArray() هنا قمنا باستدعاء الدالة
    printArray<int>(arr1, 5);
    printArray<char>(arr2, 5);
    printArray<string>(arr3, 5);

    return 0;
}
		

سنحصل على النتيجة التالية عند التشغيل.

1 2 3 4 5
a b c d e
I'm learning C++ in harmash.com
		

إذاً هنا في كل مرة تقوم فيها باستدعاء الدالة printArray() يتم تبديل الحرف E بشكل تلقائي بنوع المصفوفة التي تم تمريرها لها.

إعلان
دورة PHP و MySQL في هذه الدورة ستتعلم أساسيات لغة PHP و أساسيات MySQL و من ثم ستتعلم كيفية بناء مشروع نظام طلبات مع لوحة التحكم تطبق فيه جميع الأساسيات التي تعلمتها. سعر الدورة الآن هو 20 ريال سعودي فقط بدلاً من 520 ريال
سعر الدورة الآن هو 20 ريال سعودي فقط بدلاً من 520 ريال
تعلم الآن

الدورات

أدوات مساعدة

أقسام الموقع

دورات
مقالات كتب مشاريع أسئلة