![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
chipset |
|
||||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4071 Регистрация: 11.1.2003 Где: Seattle, US Репутация: 27 Всего: 164 |
Есть класс Т. Как узнать имеет ли он виртуальные методы, если нет его интерфейса?
Следующая задумка решает этот вопрос. Дело в том, что у виртуальных классов есть такой указатель vrpt, который указывает на таблицу с виртуальными методами. Если создать класс, который наследуется от данного нам класса и объявить в нем виртуальный метод, то в случае невиртуального класса Т, добавится поле и объем занимаемой памяти увеличится (на 2 байта); в случае же виртуальнго класса, размер останется прежним т.к. указатель на таблицу уже существует (но в саму таблицу добавляется новый метод). Вот код:
Автор ответа: neutrino --------------------
|
||||
|
|||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |