Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Возможно ли static переменную в функции? / 9 сообщений из 9, страница 1 из 1
06.03.2014, 11:08
    #38579853
Charles Weyland
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возможно ли static переменную в функции?
Код: c#
1.
2.
3.
4.
5.
void tt()
{
   static int a = 0;
   Console.WriteLine(a++);
}


Ошибка 1 Модификатор "static" недопустим для этого элемента C:\Form1.cs 53 13 Usts
...
Рейтинг: 0 / 0
06.03.2014, 11:23
    #38579884
D129
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возможно ли static переменную в функции?
Charles Weyland,

Только на уровне класса.
...
Рейтинг: 0 / 0
06.03.2014, 11:44
    #38579910
Сон Веры Павловны
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возможно ли static переменную в функции?
А еще можно попробовать объявить локальную переменную как protected. Если лень почитать букварь.
...
Рейтинг: 0 / 0
06.03.2014, 11:53
    #38579921
D129
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возможно ли static переменную в функции?
Charles Weyland,

вы просто уже это не учите (а зря) - переменные функции размещаются в стеке.
Стек - это область самого временного использования какое только возможно.
Статическая же переменная будет существовать пока существует вся программа, и доступ к ней возможен из любой функции.
Было бы глупостью давать возможность связать временное хранилище и постоянное....
...
Рейтинг: 0 / 0
06.03.2014, 12:35
    #38580004
Charles Weyland
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возможно ли static переменную в функции?
D129Charles Weyland,

вы просто уже это не учите (а зря) - переменные функции размещаются в стеке.
Стек - это область самого временного использования какое только возможно.
Статическая же переменная будет существовать пока существует вся программа, и доступ к ней возможен из любой функции.
Было бы глупостью давать возможность связать временное хранилище и постоянное....

согласен, вообще не принял во внимание это. Исчерпывающий ответ.
...
Рейтинг: 0 / 0
06.03.2014, 14:15
    #38580193
pation
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возможно ли static переменную в функции?
D129Charles Weyland,

вы просто уже это не учите (а зря) - переменные функции размещаются в стеке.
Стек - это область самого временного использования какое только возможно.
Статическая же переменная будет существовать пока существует вся программа, и доступ к ней возможен из любой функции.
Было бы глупостью давать возможность связать временное хранилище и постоянное....

это не совсем верно

Код: c#
1.
2.
3.
4.
5.
void tt()
{
   const int a = 0;
   Console.WriteLine(a++);
}
...
Рейтинг: 0 / 0
06.03.2014, 15:54
    #38580353
Charles Weyland
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возможно ли static переменную в функции?
pation
Код: c#
1.
2.
3.
4.
5.
void tt()
{
   const int a = 0;
   Console.WriteLine(a++);
}


Как такое возможно? "a" ж не изменяемая
...
Рейтинг: 0 / 0
06.03.2014, 16:13
    #38580371
pation
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возможно ли static переменную в функции?
Charles Weyland,

сорь вторую строчку не увидел
...
Рейтинг: 0 / 0
06.03.2014, 16:26
    #38580383
bazile
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возможно ли static переменную в функции?
D129Было бы глупостью давать возможность связать временное хранилище и постоянное....
В С/C++ есть возможность объявить static локальную переменую. В этом случае переменная хранится в глобальной области данных, но доступна только внутри фукнции. Разработчки C# могли сделать тоже самое, но хорошо что не сделали т.к. в рамках ООП состояние должно хранитьмя на уровне объекта или типа.
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Возможно ли static переменную в функции? / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]