![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| Fantasist |
|
|||
|
Лентяй ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1517 Регистрация: 24.3.2002 Репутация: 4 Всего: 41 |
Это было бы просто не приемлимо. Как вызывать метод решает компилятор (он генерирует код вызова), линкер подобные задачи не решает. А компилятор не может предполагать, как я буду использовать класс реализованной в данной еденице компиляции, в другой еденице компиляции. -------------------- Волны гасят ветер... |
|||
|
||||
| Crait |
|
||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 244 Регистрация: 20.2.2003 Репутация: нет Всего: 1 |
Это не обязательно так. Компилятор может поместить в .obj-файл что-нибудь типа тега CALL_METHOD, а собственно в код его развернет линкер.
Я об этом и говорю - это прерогатива линкера. И вообще, по стандарту, допустимо приведение к предку, но не наоборот. Если только точно не известно, что то, на что указывает указатель - потомок. Но все равно спасибо за вклад в копилку хакерских знаний. Это сообщение отредактировал(а) Crait - 27.2.2003, 17:31 |
||||
|
|||||
| Fantasist |
|
|||
|
Лентяй ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1517 Регистрация: 24.3.2002 Репутация: 4 Всего: 41 |
В принципе, по по стандарту, допустимо приведение чего угодно к чему угодно, просто для некоторых преобразований гарантируется, что они безопасны, то есть их всегда можно осуществить без искажения данных. В принцепе, для преобразование dynamic_cast это тоже верно - оно будет произведено только если оно корректно (безопасно), в другом случае оно вернет 0. -------------------- Волны гасят ветер... |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |