|
351 / 270 / 67
Регистрация: 12.12.2012
Сообщений: 2,131
|
|
Назначение static ?09.03.2013, 15:59. Показов 2361. Ответов 20
Метки нет (Все метки)
Здравствуйте. Я уже прочитал в двух книгах про статик,читал в википедии,но так и не понимаю для чего он ? Кучи больших текстов и объяснений для чего он,я так и не пойму конкретно,когда мне его нужно использовать.
Вы бы не могли максимально просто и понятно объяснить?) Неплохо было бы с простыми примерами. То есть когда для переменных использовать,когда для функций.
0
|
|
| 09.03.2013, 15:59 | |
|
Ответы с готовыми решениями:
20
Объяснить назначение ключевого слова static
|
|
351 / 270 / 67
Регистрация: 12.12.2012
Сообщений: 2,131
|
|
| 09.03.2013, 16:04 [ТС] | |
|
Я понимаю,но вы бы не могли рассказать о статике,что нужно знать,дабы его применять?
0
|
|
|
60 / 59 / 7
Регистрация: 03.02.2013
Сообщений: 167
|
|
| 09.03.2013, 16:05 | |
|
статические переменные (static int a; ) объявляются в теле функции и остаются в памяти после окончания жизни функции, тоесть их можно исппользовать при многократном вызове функции, например для счетчика вызовов.
своими словами=) про статические функции не слышал.
1
|
|
|
351 / 270 / 67
Регистрация: 12.12.2012
Сообщений: 2,131
|
|
| 09.03.2013, 16:07 [ТС] | |
|
Я и без статика смогу использовать переменную при многократном вызове функции
0
|
|
|
60 / 59 / 7
Регистрация: 03.02.2013
Сообщений: 167
|
||
| 09.03.2013, 16:08 | ||
|
1
|
||
|
351 / 270 / 67
Регистрация: 12.12.2012
Сообщений: 2,131
|
|
| 09.03.2013, 16:10 [ТС] | |
|
Это я понял. А когда в функции пишут static void Test() {} это как понимать?
0
|
|
|
Неэпический
|
||
| 09.03.2013, 16:12 | ||
|
Для функций тоже самое. Для локальных переменных в функции - пост #4 Статические поля класса и методы.
1
|
||
|
60 / 59 / 7
Регистрация: 03.02.2013
Сообщений: 167
|
|
| 09.03.2013, 16:12 | |
|
0
|
|
|
351 / 270 / 67
Регистрация: 12.12.2012
Сообщений: 2,131
|
|
| 09.03.2013, 16:23 [ТС] | |
|
0
|
|
|
Неэпический
|
|||||||||||||
| 09.03.2013, 16:23 | |||||||||||||
|
Кликните здесь для просмотра всего текста
Два файла:
А попробуйте без static
1
|
|||||||||||||
|
5500 / 4895 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
|
|
| 09.03.2013, 16:26 | |
|
Вообще, static перед чем нибудь, говорит о том, что это что-то хранится в статическтй памяти, а значит будет существовать до конца программы. Если static стоит перед тем, что и так хранится в статической памяти (глобальные переменные, функции и т.д.), то это значит, что это что-то имеет ограниченную (в отличие от того, если бы перед ним static не стоял) область видимости (текущий модуль).
1
|
|
|
Неэпический
|
|||||||
| 09.03.2013, 16:28 | |||||||
0
|
|||||||
|
Неэпический
|
||
| 09.03.2013, 16:30 | ||
|
Что-то на подобии private в классе.
1
|
||
|
351 / 270 / 67
Регистрация: 12.12.2012
Сообщений: 2,131
|
|
| 09.03.2013, 16:34 [ТС] | |
|
Ага,это понятно. Спасибо большое. А как еще понять,что они не будут видны из других модулей ?
0
|
|
|
Неэпический
|
||
| 09.03.2013, 16:42 | ||
|
1
|
||
|
5500 / 4895 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
|
|
| 09.03.2013, 16:47 | |
|
Добавлю ещё насчёт инициализации статических переменных. Если явно неизициализировать статическую переменную, то компилятор установит её равной 0. Элементы статических массивов и структур устанавливаются равным 0 по умолчанию. Если статическая переменная объявлена внутри блока (например в теле функции), то она инициализируется один раз при запуске программы, а при последующих заходах в этот блок она уже не будет (в отличие от локальных переменных) больше инициализироваться.
1
|
|
|
~ Эврика! ~
1258 / 1007 / 74
Регистрация: 24.07.2012
Сообщений: 2,002
|
|
| 09.03.2013, 17:11 | |
|
1
|
|
|
5500 / 4895 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
|
|
| 09.03.2013, 17:45 | |
|
1
|
|
| 09.03.2013, 17:45 | |
|
Помогаю со студенческими работами здесь
20
Static Назначение функций Назначение оператора ::
static const Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Символьное дифференцирование
igorrr37 13.02.2026
/ *
Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2).
Унарный минус обозначается как !
*/
#include <iostream>
#include <stack>
#include <cctype>. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|