في المثال التالي قمنا بتعريف الحرف E
كنوع بيانات غير محدد.
بعدها قمنا بتعريف دالة إسمها printArray()
عند استدعائها نمرر لها مصفوفة من أي نوع كان مع تمرير عدد عناصرها, فتقوم بطباعة جميع القيم الموجودة فيها.
مثال
#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
بشكل تلقائي بنوع المصفوفة التي تم تمريرها لها.