14.07.2012
Индексаторлар
Барчамизга маълумки, си шарпда хоссаларни get аксессор методлари параметрсиз бўлади. Шунинг учун уларни параметрсиз хоссалар деб аташимиз мумкин. Бундай хоссаларни тушуниш осон чунки улар билан ишлашлик худди майдонлар билан ишлагандек туюлади. Параметрсиз хоссалар бўлгани каби, параметрли хоссалар хам мавжуд.
Уларни get аксессор методлари бир ёки унадн кўп параметрларни ва set аксессор методлари икки ва ундан кўп параметрларни қабул қилиши мумкин. Хар хил дастурлаш тиллари параметрли хоссаларни хар хил ўзига хос холда тақдим этади ва уларни номланиши хам хар хил бўлади.
Масалан C# да улар индексаторлар, Visual Basic да эса улар default хоссалар деб аталади.
Индексаторлар (Indexers) - бу параметрга эга бўлган хоссалар. Улар ёрдамида объектнинг хоссаси билан худди массивга ўхшаб ишлаш мумкин. Агарда классга индексатор эълон қилинса, бу компиляторга у билан массив билан ишлаш кераклигидек хабар берилади.
Индексаторлар худди хоссаларни эълон қилингандек эълон қилинади (get ва set ёрдамида). Асосий фарқи индексатор номи сифатида this калит сўзи ишлатилади.
public double this[int i] коди, биз Vector классига мансуб бўлган хар бир объект (ёки структура) ни биз худди double қийматини қайтарувчи int индексга эга бўлган бир ўлчамли массив бўлишини ифодалайди.
Индексаторга мисол:
Фарход Дадажонов
Manba: http://virtualdars.uz