![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| Dims |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1016 Регистрация: 21.11.2006 Репутация: 1 Всего: 11 |
Будет ли правильно работать код наподобие:
|
|||
|
||||
| Dims |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1016 Регистрация: 21.11.2006 Репутация: 1 Всего: 11 |
Видимо, ответ положительный
|
|||
|
||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
прежде всего хочу заметить, что тут Вы не устанавливает одинаковую область видимости для обоих классов/структур. для А будет public, для B по умолчанию (public для struct и private для class) т.е. логичнее было бы написать
Во вторых старайтесь использовать "c++_cast" (в частности static_cast<A*>) вместо "c_cast" ( (A*) ) |
|||
|
||||
| Dims |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1016 Регистрация: 21.11.2006 Репутация: 1 Всего: 11 |
Эти новые касты я пока не полюбил ещё.
|
|||
|
||||
| azesmcar |
|
|||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 81 Всего: 211 |
зря. C-style cast довольно тупой инструмент, он ничего не проверяет и подходит разве что только для POD -ов, использовать C-style cast с классами большая ошибка, используй static_cast и dynamic_cast. А вообще, если появилась надобность в downcast-е - значит интерфейс базового класса недостаточно хорош. Это сообщение отредактировал(а) azesmcar - 3.11.2009, 10:18 |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |