![]() |
|
Модераторы: korob2001, ginnie |
![]()
|
|
| Ramirez |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 305 Регистрация: 18.1.2005 Где: Moscow, ExUSSR Репутация: 4 Всего: 5 |
Доброго всем!
если есть несколько классов, которые по цепочке наследуют друг от друга, как получить список всех родителей? @ISA и SUPER позволяют обращаться только к вышестояшему родителю. А как узнать его родителей? Не создавать же обьект родительского класса и мотреть его @ISA?! Заранее спасибо! Это сообщение отредактировал(а) Ramirez - 7.10.2010, 18:14 |
|||
|
||||
| KSURi |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 887 Регистрация: 8.6.2006 Где: Russia Репутация: 20 Всего: 27 |
Что-то типа такого (не проверял):
Это сообщение отредактировал(а) KSURi - 7.10.2010, 19:26 -------------------- Died at Life.pl line 21 |
|||
|
||||
| DurRandir |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 335 Регистрация: 27.9.2009 Репутация: 14 Всего: 17 |
mro/MRO::Compat, в зависимости от версии перла. Там есть много полезных методов.
Это сообщение отредактировал(а) DurRandir - 7.10.2010, 23:14 |
|||
|
||||
| gcc |
|
|||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: 1 Всего: 17 |
http://search.cpan.org/search?query=next&mode=all
писали что обычный use NEXT медленный и catalyst в отладке пишет, что надо заменить его на Class::C3::Adopt::NEXT (у меня для 5.8.9 он используется) ... еще в книге старой ("Рецепты для профессионалов" 3 издание, вродебы) было написано как использовать множественное многоуровневое наследование, там как-то 2 раза написать SUPER... Это сообщение отредактировал(а) gcc - 8.10.2010, 09:19 |
|||
|
||||
| Ramirez |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 305 Регистрация: 18.1.2005 Где: Moscow, ExUSSR Репутация: 4 Всего: 5 |
DurRandir, gcc, да спасибо, про MRO и C3 почитал. Много полезного умеют и, я так понимаю, должны работать быстро. Не осилил применить пока.
Сделал по методу KSURi, но без рекурсии:
|
|||
|
||||
![]()
|
| Правила форума "Perl" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Perl: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |