@vladsivolobov

Когда нужно использовать var?

Пока писал простенький код заметил, что когда я написал int rnd = new Random(); у меня произошла ошибка, я поменял int на var и всё заработало. После этого появился такой вопрос.
  • Вопрос задан
  • 261 просмотр
Решения вопроса 2
firedragon
@firedragon
Не джун-мидл-сеньор, а трус-балбес-бывалый.
typeof(int) != typeof(Random)

Как бы так
Ответ написан
@Wundarshular
В вашем случае, как указали выше, происходит ошибка приведения типов, так как тип int действительно не равен типу Random.
Если вы хотели сохранить в переменной rnd псевдослучайное число, то вам нужно предварительно создать и инициализировать экземпляр класса Random, а затем уже присвоить возвращаемое значение его метода Next() переменной:
Random rnd = new Random();
int rndNum = rnd.Next();

Переменные, объявленные через "var" являются неявно типизированными, и их тип определит компилятор, то есть, в вашем случае
var rnd = new Random();
станет экземпляром класса Random на этапе компиляции. В очень простом пояснении: используйте var, когда заведомо не знаете, какого типа будет ваша переменная. Но имейте ввиду, что это может быть черевато.

https://docs.microsoft.com/ru-ru/dotnet/csharp/lan...
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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