IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

> Что Delphi делает с памятью?, Экономить нужно каждый байт
CMOS
сообщение 7.07.2005 21:10
Сообщение #1


Пионер
**

Группа: Пользователи
Сообщений: 57
Пол: Мужской

Репутация: -  0  +


Когда резервируется память под переменные в процедурах и функциях?
Перед вызовом или во время загрузки программы.

procedure ...
var s: String {256 байт!!! А если это массив строк!?}
begin
...


Можно, конечно, идти через указатели, динамические переменные...
Но все-таки:
Выгружается ли переменная из памяти после завершения процедуры?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов(1 - 3)
volvo
сообщение 7.07.2005 21:40
Сообщение #2


Гость






Ну, это все-таки локальная переменная, она только во время работы процедуры и существует.
 К началу страницы 
+ Ответить 
Romtek
сообщение 7.07.2005 21:48
Сообщение #3


Знаток
****

Группа: Пользователи
Сообщений: 303
Пол: Мужской
Реальное имя: Роман

Репутация: -  2  +


CMOS
Паскаль бы тебе подучить, прежде чем к Дельфи приступать.

var
s: string; { должно занимать 256 байт, если в квадратных скобках не указать размер ! }
s2: string[10]; { выделится 11 байт! }


--------------------
Romiras HomeLab- материалы и статьи по разработке ПО, моделирование алгоритмов, обработка и анализ информации, нейронные сети, машинное зрение и прочее.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
xds
сообщение 8.07.2005 0:40
Сообщение #4


N337
****

Группа: Пользователи
Сообщений: 737
Пол: Мужской

Репутация: -  26  +


Память под локальные переменные резервируется после вызова процедуры (самой процедурой) и освобождается перед возвратом из неё.

Кстати, в Delphi при настройках по-умолчанию
Код
var
 s: String; // 4 байта - указатель на динамический объект


--------------------
The idiots are winning.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 9.07.2025 18:35
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"