Пользовательская коллекция переменных (аналогично Array) в C#C#

Место общения программистов C#
Ответить
Гость
 Пользовательская коллекция переменных (аналогично Array) в C#

Сообщение Гость »


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

var array = new MyStruct[] {new MyStruct() }; список вар = новый List {новый MyStruct() }; массив[0].Значение = 1; // Юридический список[0].Значение = 2; // Незаконно вар listElement = список [0]; списокЭлемент.Значение = 3; // Это допустимо, но отличается от изменения массива[0], поскольку при доступе к списку[0] создается копия struct MyStruct // Да, злая изменяемая структура { общественное значение int; } Мои вопросы:
[*]Есть ли способ написать на C# собственную коллекцию, имитирующую поведение массива, т. е. представляющую собой коллекцию переменных вместо значений? [*]Если нет, значит ли это, что массивы в этом смысле волшебны и принципиально отличаются от всех других коллекций?
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»