Почему я не могу объявить, например, var myVar = "myvariable" как глобальную переменную в классе ?. Есть ли способ сделать это?Объявление var внешних функций
ответ
Beginning in Visual C# 3.0, variables that are declared at method scope can have an implicit type var
Из-за спецификации C# они находятся только в области методов.
why i can't declare for example var myVar="myvariable" as a global variable in a class?.
Так как именно designers of the C# language решил осуществить его.
Is there any way to do it?.
Нет, не существует.
Вы могли бы объяснить почему? почему дизайнеры приняли это решение? – naveen
@naveen, вы прочитали сообщение в блоге, которое я связал с: http://blogs.msdn.com/b/ericlippert/archive/2009/01/26/why-no-var-on-fields.aspx Это написано одним из разработчиков компилятора C#, и в этом он объясняет причину. –
no i din't. Я отредактировал eric lippert как дизайнеры в своем предыдущем посте перед отправкой. – naveen
var
- это ключевое слово, обычно используемое для анонимных типов. Затем, объявив поле или глобальную переменную, вы должны явно указать реальный тип для своего поля.
var
can only be used when a local variable is declared and initialized in the same statement; the variable cannot be initialized to null, or to a method group or an anonymous function.
var
cannot be used on fields at class scope.Variables declared by using var cannot be used in the initialization expression. In other words, this expression is legal:
int i = (i = 20)
; but this expression produces a compile-time error:var i = (i = 20)
;Multiple implicitly-typed variables cannot be initialized in the same statement.
If a type named var is in scope, then the var keyword will resolve to that type name and will not be treated as part of an implicitly typed local variable declaration.
Смотрите также: Eric Lippert opinion
Нет, вар только для локально контекстные переменные. См. this
Неявный тип может быть помещен в область метода как локальная переменная.
Я думаю, что вы ищете статическую переменную.
Например
public class AGlobalVar
{
public static int AVar = 10;
}
Вы должны быть в состоянии получить доступ к переменной в любом месте приложения. Для доступа к нему просто перейдите на AGlobalVar.AVariable.
- 1. Объявление внешних функций в зависимости от того, существуют они
- 2. Объявление функций
- 3. Объявление функций
- 4. Объявление ios boolean var
- 5. Объявление VAR на Node.js
- 6. Объявление функций в JavaScript
- 7. Объявление переменной внутри функций
- 8. Объявление null var в Scala
- 9. Запретить объявление переменных без var
- 10. Объявление var в выражении unray?
- 11. Объявление Var перезаписывает текущую переменную
- 12. Объявление функций в JSP?
- 13. Объявление функций C++
- 14. Объявление ... как массив функций?
- 15. Объявление функций часть вторая
- 16. Автоматическое объявление функций/переменных
- 17. Объявление функций в заголовке
- 18. Соответствие (основные) Объявление функций
- 19. Объявление функций Lua Regex
- 20. неявное объявление функций?
- 21. Объявление функций в Groovy
- 22. Как изменить аргументы внешних функций
- 23. где определение внешних функций в файле заголовка
- 24. Python: вызов внешних функций внутри функций
- 25. Вызов внешних функций в встроенных функций
- 26. Лучшее понимание внешних функций «C»
- 27. debug wrapper для внешних функций
- 28. C++ - Объявление массивов внутри функций
- 29. Отдельное объявление функций в haskell
- 30. Введение в C: Объявление функций
Тогда что такое 'class'? – Rahul
Возможный дубликат [Почему поля классов не могут быть var?] (Http://stackoverflow.com/questions/4461597/why-class-fields-cannot-be-var) –