Index függvény (indexer)

Az indexer függvény definiálása valójában a vektorhasználat és a tulajdonság függvány kombinációja. Gyakran előfordul, hogy egy osztálynak olyan adatához szeretnénk hozzáférni, egy indexérték segítségével tudjuk megomdani, hogy melyik is a keresett érték. Az indexer függvény esetében lényeges különbség, hogy van egy index paraméter, amit szögletes zárójelek között kell jelölni, és nincs neve, pontosabban a this kulcsszó a neve, ugyanis az aktuális típust mint vektort indexeli. Mivel az indexer az aktuális típust, a létező példányt indexeli, ezért az indexer függvény nem lehet statikus. Az indexer esetében is, hasonlóan a tulajdonság definíció használatához, nem feltétlen mindkét (get, set) ágat definiálni. Ha csak a get blokk definiált, akkor csak olvasható, ha csak a set blokk definiált, akkor csak írható indexer függvényről beszélünk.


Osztályok függvényparaméterként

Egy függvény paraméterei más egyszerű adattípushoz hasonlóan lehetnek osztálytípusok is. Alapértelmezés szerint az osztálytípusú változó is érték szerint adódik át.