![]() |
Модераторы: Partizan, gambit |
![]() ![]() ![]() |
|
jeans1986 |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 165 Регистрация: 31.3.2007 Репутация: нет Всего: нет |
Здравсвуйте. Я новичок и не понля что такое индексаторы? Как их применять? Заранее благодарю.
|
|||
|
||||
SpaceSpace |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 366 Регистрация: 10.4.2007 Где: Самара Репутация: 2 Всего: 10 |
Индексатор позволяет работать с классом или структурой таким образом, как если бы это были массивы. Индексация класса выполняется по индексу, указываемому как параметр. Иногда классы, используемые как индексаторы, называют классами-индексаторами.
-------------------- Репутация - самое ценное, что есть у человека. Зарабатывают годы, теряют за мгновение. 70-565 MCPD Enterprise 3.5 |
|||
|
||||
andrx |
|
|||
![]() Андрей ![]() Профиль Группа: Участник Сообщений: 109 Регистрация: 16.12.2005 Где: Киев Репутация: 1 Всего: 4 |
Индексаторы целесообразно использовать в том случае, если существует необходимость в обработке совокупности однотипных объектов.
(В прочем, к примеру, Байдачный в своей книге показал пример решения вычисления факториала с помощью индексатора.) Например, грубо говоря, есть приложение, обрабатывающее данные по парку машин. В приложении существует класс МАШИНА. Т.е. у нас есть совокупность однотипных объектов - парк машин, состоящий из множества машин. Так вот, парк машин можно реализовать как индексатор, в котором содержится множество(коллекция) машин. При этом обращение к элементу коллекции, можно организовать не только через индекс, но и через имя или даже через значения свойств объектов, находящихся в коллекции (если конечно эти свойства уникально идентифицируют объект). Т.е. в приведенном примере можно организовать доступ к машине как через индекс, так и через номер машины. Удобство состоит в обращении к элементам таким же способом, как и к элементам массива. --------------------
Лучше скажи мало, но хорошо. (Козьма Прутков) |
|||
|
||||
mihryak |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 731 Регистрация: 28.4.2007 Где: С-Пб Репутация: 19 Всего: 36 |
ещё индексаторы могут помочь скрыть устройство внутренней коллекции (Dictionary, к примеру), обращение к ней будет не через вынесенное свойство и не через методы доступа, а через удобные индексы.
|
|||
|
||||
a_n_d_y |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 81 Регистрация: 23.10.2006 Где: Ukraine::Kiev Репутация: нет Всего: 1 |
аналог operator[] из С++...
|
|||
|
||||
Kefir |
|
|||
«Hakuna Matata» ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1878 Регистрация: 25.1.2003 Где: Tampere, Suomi Репутация: 2 Всего: 87 |
скину примерчик:
|
|||
|
||||
mr.DUDA |
|
|||
![]() 3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 110 Всего: 232 |
Более удачный пример - квадратные скобки при работе с Dictionary или Hashtable.
-------------------- ![]() |
|||
|
||||
Kefir |
|
|||
«Hakuna Matata» ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1878 Регистрация: 25.1.2003 Где: Tampere, Suomi Репутация: 2 Всего: 87 |
Может быть. Я просто показал как ими пользоваться в своих классах
|
|||
|
||||
![]() ![]() ![]() |
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |