Прошу дайте исчерпывающий ответ где лучше юзать static, а где new.
А то я не совсем понял различие в них. Разве что static, как я понял уже остаётся в памяти сервера после объявления
---------------------
разобрался))
Прошу дайте исчерпывающий ответ где лучше юзать static, а где new.
А то я не совсем понял различие в них. Разве что static, как я понял уже остаётся в памяти сервера после объявления
---------------------
разобрался))
Последний раз редактировалось AQuays; 15.08.2017 в 22:30.
Я ВКонтакте: Алексей Попов
На эту тему уже есть урок в моём Учебнике (http://pro-pawn.ru/showthread.php?4082).
Ок, обобщу ещё раз.
Локальные переменные:
С помощью ключевого слова new объявляются переменные, которые создаются в стеке и существуют только во время выполнения функции, в которой эти переменные объявлены. Обычно инициализируются нулями (если не указать другого значения).
Через static же объявляются переменные, которые всё время находятся в секции данных. Они не создаются перед и не уничтожаются после выполнения функции. По сути это те же глобальные переменные, но которые доступны только внутри функции, в которой они объявлены. Сохраняют своё значение после предыдущего выполнения функции.
Глобальные переменные:
new - переменные, которые будут видны в пределах текущего исходного файла и подключаемых файлов (если эти файлы подключены после new).
static - переменные, которые видны только в пределах текущего файла. Полезно, если вы пишете какой-нибудь инклуд и хотите, чтобы какая-то переменная была недоступна из мода и могла использоваться только в пределах вашего инклуда.
(c) Daniel_Cortez
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)