Могу ли я создать временную ссылку на экземпляр структуры в теле метода? - PullRequest
3 голосов
/ 06 мая 2020

Я знаю, что вы можете передавать ссылки на struct в методе, например

void method(ref MyStruct param)

Но могу ли я сделать это в теле метода, чтобы создать псевдоним структуры для удобства чтения? У меня был код, использующий эту временную переменную:

var properties = this.document.header.protocols[0].properties;

Только при попытке отследить ошибку я понял, что это потому, что это была структура, а не класс, и я создавал копию, а не ссылку!

1 Ответ

3 голосов
/ 06 мая 2020

Да, начиная с C# 7.0 , поддерживаются локальные переменные :

ref var properties = ref this.document.header.protocols[0].properties;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...