Шаг 65 - Индексаторы

Используются для создания массивов расширенной функциональности. Идея заложена та же что и в свойствах. Подробнее читайте "Шаг 20 - Свойства (properties)". То есть мы получаем контроль над присваиванием и получением значения. Смотрим пример:

using System;

class MyArray
{
	public MyArray()
	{
		items = new string[10];
	}

	public string this[int index]
	{
		get    
		{
			return items[index]; 
		} 
		set    
		{
			items[index] = value; 
		} 
	} 
   
	private string[] items;
}

class MainClass
{
	public static void Main(string[] args)
	{
		MyArray my = new MyArray();
		my[0]="Hello";	
		Console.WriteLine(my[0]);
	}
}

Как видите я создал свой класс и описал в нем массив. В Для доступа создал безымянный метод this[int index], в котором созданы get и set, точно так же как в свойствах.

gif/65_1.gif (2480 b)


Загрузить проект | Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем - 6.10.2001