Преимущество типов значений перед ссылочными типами?

Видя, как новые экземпляры типов значений создаются каждый раз, когда они передаются в качестве аргументов, я начал думать о сценариях, в которых использование ключевых слов ref или out может показать значительную производительность. улучшение.

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

Мне кажется, что было бы намного проще иметь только ссылочные типы, как в Java.

Изменить: Чтобы прояснить это, я не имею в виду типы значений меньше 8 байтов (максимальный размер ссылки), а скорее типы значений размером 8 байтов и более.

Например, структура Rectangle , содержащая четыре значения int .

6
задан one noa 28 January 2019 в 08:58
поделиться