Я люблю неявной типизации в C# для локальных переменных:неявной типизации для полей в C#
var Beer = new Malt.Beer();
вместо:
Malt.Beer Beer = new Malt.Beer();
Я не думаю, что это может быть распространено на полях это может?
public var Beer = new Malt.Beer();
вместо:
public Malt.Beer Beer = new Malt.Beer();
Это не компилируется, но интересно, что я только что получил синтаксис неправильно или неявные переменные (VAR) не могут быть использованы в этой области?
Я не верю, что это возможно. 'var' работает только внутри методов. –
var мой образ мышления был большой ошибкой Microsoft. Подумайте об этом, когда вы используете Var, компилятор должен преобразовать в правильный тип объекта. Если в вашем явном виде это не так. Также в больших программах, когда вы пытаетесь отлаживать, довольно часто вам приходится наведываться на переменную, чтобы узнать, что это такое, а не видеть сразу тип объекта. Вы также потеряете intellisense для переменных типа var. Вар должен использоваться только в сочетании с дженериками, где он может иметь разные типы. – bilpor
@bilpor большая часть того, что вы только что сказали, совершенно неверна. Компилятору не нужно «конвертировать» что угодно - переменная всегда строго типизирована. 'int i = 10;' и 'var i = 10;' точно совпадают и приводят к тому же IL. Вы также не теряете Intellisense вообще, он по-прежнему работает отлично. –