8.2.13. Классы |
Вверх Предыдущий Следующий |
Подобно объектам, классы хранятся в памяти как обычные записи с дополнительным полем: указателем на таблицу виртуальных методов – Virtual Method Table (VMT). Это поле записывается первым, а все поля класса записываются в том порядке, в каком они объявлены. В отличие от объекта, все поля класса всегда хранятся в динамической памяти. Объём выделяемой памяти выглядит так, как показано в таблице 8.6. Таблица 8.6. Распределение памяти для класса (32/64-разрядная модель).
Таблица виртуальных методов (VMT) для каждого класса состоит из нескольких полей, которые используются для информации во время выполнения. Макет VMT показан в таблице 8.7. VMT создаётся компилятором. Таблица 8.7. Распределение памяти для VMT класса (32/64-разрядная модель).
Посмотрите файл rtl / inc / objpash.inc для самой последней информации VMT. |