Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

О классах памяти

9.2K
14 февраля 2005 года
yahel
5 / / 14.02.2005
вот такой вот у меня вопрос:
есть некая функция, одна из переменных этой функции(то есть локальная переменная) описывается достаточно большой структурой(размер памяти для её хранения внушительный). и так получилось, что мне стало необходимо сделать глобальное время жизни-то есть для неё я объявил класс памяти static, естесственно если бы переменная была с локальным временем жизни, по после выхода из блока функции память от неё освобождалась бы, меня интересует-может ли эта освободившаяся память использоваться программой под другие нужды-то есть когда не выполняется функция?
получу ли я выгоду, если поломаю голову и придумаю как в данном случае не использовать static и перейти к использованию класса памяти auto.
1.9K
14 февраля 2005 года
solovey
113 / / 25.07.2004
Цитата:
Originally posted by yahel
вот такой вот у меня вопрос:
есть некая функция, одна из переменных этой функции(то есть локальная переменная) описывается достаточно большой структурой(размер памяти для её хранения внушительный). и так получилось, что мне стало необходимо сделать глобальное время жизни-то есть для неё я объявил класс памяти static, естесственно если бы переменная была с локальным временем жизни, по после выхода из блока функции память от неё освобождалась бы, меня интересует-может ли эта освободившаяся память использоваться программой под другие нужды-то есть когда не выполняется функция?
получу ли я выгоду, если поломаю голову и придумаю как в данном случае не использовать static и перейти к использованию класса памяти auto.


Т.е. ты хочешь узнать, может ли программа использовать память, которую освободили переменные, вышедшие из области видимости? Если да, то так и есть: в этом и есть смысл - освобождать память, чтобы она могла использоваться дальше.

4.9K
16 февраля 2005 года
CyberMan
55 / / 25.01.2005
Цитата:
Originally posted by yahel
вот такой вот у меня вопрос:
есть некая функция, ...
получу ли я выгоду, если поломаю голову и придумаю как в данном случае не использовать static и перейти к использованию класса памяти auto.


Да, память будет использоваться программой для других нужд. Но другой вопрос как часто вызывается данная функия. Если функция вызывается часто и много, то на инициализацию уйдет много времени особенно если переменная объявлена как динамическая, а память сейчас не такая уж и дорогая, к тому же есть еще и виртуальная. Следовательно вопрос об объявлении переменных по моему разумению решается из соображений удобства использования и скорости программы.

279
16 февраля 2005 года
bave
456 / / 07.03.2004
Отвечаю вместо Яхеля, т. к. он разместил эту тему по моей просьбе, потому как у меня с инетом проблемы были.
Спасибо за ответ, возьму на заметку.
Я уже переписал программу так, что необходимость
в использовании static отпала.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог