c#에서 인덱서는 클래스나 구조체의 인스턴스를 배열처럼 인덱싱할 수 있게 한다.
class MyIndexer
{
private int[] arr;
public MyIndexer(int length)
{
arr = new int[length];
}
public int this[int index]
{
get => arr[index];
set
{
if (index >= arr.Length)
{
Array.Resize(ref arr, index+1);
}
arr[index] = value;
}
}
public int Length => arr.Length;
}
class MainApp
{
static void Main(string[] args)
{
MyIndexer indexer = new MyIndexer(0);
for (int i = 0; i < 5; i++)
indexer[i] = i;
for (int i = 0; i < indexer.Length; i++)
{
Console.WriteLine(indexer[i]);
}
}
}'c#' 카테고리의 다른 글
| IEnumerable과 IEnumerator (0) | 2021.04.16 |
|---|---|
| c# Auto properties (0) | 2021.04.15 |
| 가변길이 매개변수 params (0) | 2021.04.14 |
| c# out 키워드 두 개 이상의 결과를 내보낼 때 사용 (0) | 2021.04.13 |
| c# ref return (0) | 2021.04.13 |