Книга: ЯЗЫК ПРОГРАММИРОВАНИЯ С# 2005 И ПЛАТФОРМА .NET 2.0. 3-е издание

Заключительные замечания об индексаторах

Заключительные замечания об индексаторах

Чтобы получить настоящую экзотику, вы можете создать индексатор, который имеет множество параметров. Предположим, что у нас есть пользовательская кол-лекция, которая хранит элементы в двумерном массиве. В этом случае вы можете создать метод индексатора, доказанный ниже.

public class SameContainer {
 private int[,] my2DinArray = new int[10, 10];
 public int this[int row, int column] {/* прочитать или установить значение 2D-массива * /}
}

В заключение следует заметить, что индексаторы могут определяться и для типа интерфейса .NET, что обеспечивает реализующим интерфейс типам возможность его настройки. Вот пример такого интерфейса.

public interface IEstablishSubObjects {
 // Этот интерфейс определяет индексатор, возвращающий
 // строки на основе числового индекса.
 string this[int index] {get; set;}
}

Пожалуй, об индексаторах C# уже сказано достаточно. Перейдем к рассмотрению еще одного подхода, используемого в некоторых (но не во всех) языках программирования .NET: это перегрузка операций.

Оглавление книги


Генерация: 2.672. Запросов К БД/Cache: 3 / 1
поделиться
Вверх Вниз