Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.08.2010, 19:48   #1
Selestis
Форумчанин
 
Аватар для Selestis
 
Регистрация: 21.01.2009
Сообщений: 719
По умолчанию Адрес первого поля класса

Здравствуйте, уважаемые форумчане!
В дельфи любая переменная типа "класс" является указателем на некую область памяти, где он хранится. Но наличие таких функций как TObject.ClassName вызывает подозрения что не всё так просто. Что именно кроме имени класса лежит по адресу переменной-объекта этого класса? Точнее, интересен не сам этот вопрос, а сдвиг, который нужно будет сделать, чтобы записать по указателю на объект значение в его первую переменную-член (поле). Пытался юзать поиск и гугл, но видимо я не способен нормально сформулировать суть вопроса, не вызвав поток ненужных страниц =)

Update:
Вывел адреса объекста и первой переменной, разница в 4 байта... Скорее всего это указатель на описание класса, мне кажется. Можно ли предположить, что так во всех классах?)
Изобретатель велосипедов

Последний раз редактировалось Selestis; 05.08.2010 в 20:25. Причина: Update
Selestis вне форума Ответить с цитированием
Старый 05.08.2010, 22:25   #2
GunSmoker
Старожил
 
Регистрация: 13.08.2009
Сообщений: 2,581
По умолчанию

Плюх.

Служебная инфа по отрицательным смещениям - см. константы vmtXYZ в System.pas.
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.

Последний раз редактировалось Stilet; 06.08.2010 в 09:09.
GunSmoker вне форума Ответить с цитированием
Старый 05.08.2010, 22:31   #3
Selestis
Форумчанин
 
Аватар для Selestis
 
Регистрация: 21.01.2009
Сообщений: 719
По умолчанию

Спасибо большое, раскурил)
Изобретатель велосипедов
Selestis вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Адрес поля Sibedir Общие вопросы Delphi 0 12.06.2010 19:45
Если в классе объявить объект другого класса,будет ли видно переменные первого класса из объекта второго? TwiX Общие вопросы Delphi 3 15.11.2009 00:54
Адрес метода класса? VintProg Общие вопросы Delphi 6 27.09.2009 13:10
Поля класса xell29 Общие вопросы Delphi 8 18.06.2009 17:10
как узнать ip адрес зная mac адрес Roman Работа с сетью в Delphi 9 25.06.2007 12:39