Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.10.16;
Скачать: CL | DM;

Вниз

Integer(pchar())   Найти похожие ветки 

 
Olivka ©   (2003-10-06 12:42) [0]

Если я какой =то переменной присваиваю
var TAG:integer
TAG:=integer(pchar("ddd"));

То где будет храниться "ddd"? В TAG мы будем иметь целочисленное от указателя? И нужно ли будет потом удалять за собой эту строчку?


 
Digitman ©   (2003-10-06 12:50) [1]


> где будет храниться "ddd"


в read-only секции инициализированных данных процесса


> В TAG мы будем иметь целочисленное от указателя


да. значение указателя, рассматриваемое просто как целое 32-разр. число со знаком


> нужно ли будет потом удалять за собой эту строчку


нет.


 
Olivka ©   (2003-10-06 16:16) [2]

А если TAG - это свойство тег контрола? тут нету никаких подводных камней? если его присваивать например, в Init, а потом использовать как

> TempPChar:=pchar(SomeControl.tag);


 
Digitman ©   (2003-10-06 16:34) [3]

никаких.

Tag - просто поле структуры класса контрола

Компилятор не делает никаких предположений о том, что в каждый момент времени хранит поле объекта Control.Tag, и не вставляет неявно никакой код, который бы работал со значением этого поля

выражение

pchar("ddd")

вернет типизированную ссылку на область данных, которая фиксирована по местоположению в ВАП процесса.

время жизни данных, которые определены и адрес которых получен таким образом, равно времени жизни процесса и не зависит ни от чего ... ну разве что от извращений программиста, вздумавшего изменить привелегии доступа к соотв.странице вирт.памяти процесса или вообще выгрузить ее из ВАП процесса)


 
Olivka ©   (2003-10-06 20:14) [4]

Спасибо большое за такой четкий ответ.



Страницы: 1 вся ветка

Текущий архив: 2003.10.16;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.027 c
1-51226
Dimaz-z
2003-10-03 17:48
2003.10.16
Как узнать информацию и билде и дате компиляции?


4-51549
tovSuhov
2003-08-12 17:28
2003.10.16
Получение иконки, ассоциированной с данным расширением


1-51162
Senia
2003-10-05 16:21
2003.10.16
Random


14-51436
Е-Моё имя
2003-09-30 11:07
2003.10.16
Жилье в Питере


3-51095
Phenest
2003-09-25 17:03
2003.10.16
Проблема с Btrieve