Как делает Систему. Пустой тип указывает тип возвращаемого значения для метода, который не возвращает значение?

public void PrintAllSuits()
{
    foreach(string suit in Enum.GetNames(typeof(Suits)))
    {
        Console.WriteLine(suit);
    }
}
5
задан Joan Venge 6 August 2009 в 23:29
поделиться

3 ответа

Метод ничего не возвращает; в стеке не отображается возвращаемое значение (в отличие от нулевого значения, все нули, ссылка на System.Void и т. д.)

Тип System.Void просто заполнитель для API-интерфейсов отражения, чтобы у отражения был удобный способ сообщить вам, что метод не возвращает значение.

5
ответ дан 18 December 2019 в 09:52
поделиться

Я не совсем понимаю, что вы ищете. Существует System.Void и ключевое слово void.

Это ключевое слово используется по причинам, указанным в вашем определении типа. Тип используется в отражении, когда вы спрашиваете, какой «тип» вернет информация о методе.

8
ответ дан 18 December 2019 в 09:52
поделиться

Этот тип значения фактически используется для отражения. Предположим, вы хотите запросить тип возвращаемого значения метода. Какую ценность вы получите обратно? Это то, для чего предназначен System.Void.

Но в документации уже сказано:

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

4
ответ дан 18 December 2019 в 09:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: