المفهرسات ( ارشادات برمجة C# )

وتسمح المفهرسات مثيلات للفئة أو البنية ليتم فهرستها تماماً مثل الصفائف. تشبه المفهرساتخصائص إلا تلك التي تأخذ موصلاتها معلّمات.

في المثال التالي، يتم تعريف فئة عامة تقدم مع أساليب الموصلات البسيطة الحصول و تعيين كوسيلة لتعيين واسترداد القيم. الفئة Program تنشئ مثيل لفئة لتخزين السلاسل.

class SampleCollection<T>
{
    // Declare an array to store the data elements.
    private T[] arr = new T[100];

    // Define the indexer, which will allow client code
    // to use [] notation on the class instance itself.
    // (See line 2 of code in Main below.)        
    public T this[int i]
    {
        get
        {
            // This indexer is very simple, and just returns or sets
            // the corresponding element from the internal array.
            return arr[i];
        }
        set
        {
            arr[i] = value;
        }
    }
}

// This class shows how client code uses the indexer.
class Program
{
    static void Main(string[] args)
    {
        // Declare an instance of the SampleCollection type.
        SampleCollection<string> stringCollection = new SampleCollection<string>();

        // Use [] notation on the type.
        stringCollection[0] = "Hello, World";
        System.Console.WriteLine(stringCollection[0]);
    }
}

نظرة عامة حول المفهرسات

  • المفهرساتتمكن الكائن المراد فهرسته بطريقة مشابهة إلى الصفيف.

  • الموصل get يعيد قيمة. الموصل set يعيّن قيمة.

  • الكلمة الأساسية هذاتستخدم لتعريف المفهرسات.

  • الكلمة الأساسية القيمة اتستخدم لتعريف القيمة التي يتم تعيينها للمفهرس set.

  • مفهرسات لا يجب أن تتم فهرستها بقيمة عدد صحيح؛ والأمر متروك لك لتحديد كيفية البحث المحددة.

  • يمكن تحميل المفهرسات فوق طاقتها.

  • يمكن أن يكون للمفهرسات أكثر من معلمة رسمية، على سبيل المثال، عند الوصول إلى صفيف ثنائي الأبعاد.

الأقسام ذات الصلة

مواصفات لغة #C

لمزيد من المعلومات، راجع مواصفات لغة #C. مواصفات اللغة هي المصدر النهائي لبناء جملة C# واستخدامها.

راجع أيضًا:

المرجع

الخصائص (دليل البرمجة لـ #C)

المبادئ

دليل البرمجة لـ #C