Определенно, проще всего использовать ссылочные типы - баланс «Не заставляй меня думать» действительно помогает таким образом
FWIW, я прекрасно вижу себя, выделяя буферразмером примерно 2 Мб для хранения массива объектов типа значений.
Дело в том, сколько раз они должны быть переданы.Если это просто для справочной таблицы, массив объектов значений выиграет немного производительности, и, возможно, другие преимущества [1].Это может быть полезно в шаблоне типа FlyWeight
Просто позаботьтесь о том, чтобы индексы передавались только таким объектам вокруг , иначе копирование скоро сделает жизнь более несчастной.ваше приложение
[1] например, быстрая сериализация;индексы массива находятся под контролем разработчика приложения, в отличие от идентификатора эталонного значения.Это может обеспечить очень эффективную «поверхностную» сериализацию таких элементов поиска по значению индекса, что полезно в случае использования типа marshalling (вместо фактического маршалинга полного ссылочного объекта, вы можете обратиться к нему с помощьюиспользуя «вездесущий постоянный идентификатор», который вы разработали для этой цели).