Статические переменные в С#
В С# существует ли способ статической переменной в методе VB.Net?
Static myCollection As Collection
Ответы
Ответ 1
Почему С# не поддерживает статический метод переменные?
Q: В С++ можно написать статической переменной метода и переменная, доступ к которой возможен только изнутри метода. С# не предоставить эту функцию. Почему?
A: Есть две причины, по которым С# имеют эту функцию.
Во-первых, можно получить почти тот же эффект, статический статический класс и метод добавления статика потребует увеличения сложность.
Во-вторых, статика уровня метода несколько печально известный проблемы при вызове кода многократно или из нескольких потоков, и поскольку определения находятся в методов, сложнее найти определения.
- msdn С# faq
Ответ 2
Нет, нет, но как это отличается от статической переменной на уровне класса?
Собственно, если вы посмотрите на то, как реализовано совместное использование, это трюк компилятора, который создает статическое поле в классе.
Ответ 3
Ближайшая вещь к VB.NET Static
заключается в создании поля в текущем типе. Кроме того, что С# не имеет эквивалента.
Ответ 4
Нет. CLR не поддерживает это, и VB.NET прибегает к трюкам компилятора, чтобы это разрешить. Тьфу.
Ответ 5
Я уверен, что эквивалент С# const
: поэтому:
public const Collection myCollection = new Collection();
Я не слишком хорошо знаком с VB.NET, поэтому я могу быть вне базы, но это позволит вам установить переменную, которая не может быть изменена.