Существует ли какое-либо практическое использование структуры "Пустота" в .NET.

Просто любопытство, есть ли практическое использование "Пустоты" struct

кроме отражения?

Ответы

Ответ 1

System.Void является эквивалентом ключевого слова void. Проверьте наконечник инструмента void, и он отобразит

struct System.Void

Но он не может использоваться непосредственно в С#, поэтому лучше всего его игнорировать.

Попытка использования System.Void создаст ошибку компиляции

ошибка CS0673: System.Void не может использоваться из С# - используйте typeof (void), чтобы получить объект типа void

Итак, он попадает только в тему отражения.

Ответ 2

Я думаю, но я не уверен, что эта структура используется компилятором для генерации il для функций с типом возвращаемого типа

Ответ 3

В документации по скважине говорится:

Структура Void используется в пространстве имен System.Reflection, но редко используется в типичном приложении. Структура Void не имеет членов, кроме всех типов, наследуемых от класса Object.

Поэтому я сомневаюсь.