Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Perl: Общие вопросы > возврат значения |
Автор: gcc 13.5.2009, 00:56 | ||||||
есть модуль не маленький желательно нужно сделать такие дейтсвия, сразу два метода обработать:
если я правильно понял, то exist возвращает объект можно ли узнать что возвращать просто значеие или что нужно возвратить объект?
у меня exist передает данные в SQL::Abstract или другой метод выводит массив с ошибками если какие-то данные не правильные.... как инициализировать 2 метода если один может возвратить не объект а значение...?
|
Автор: DaemonSuw 13.5.2009, 08:11 | ||
Проверять возвращаемое значение можно с помощью UNIVERSAL::isa( VAL, TYPE )...
|
Автор: KSURi 13.5.2009, 12:59 | ||||
Для проверки класса объекта использовать процедурный вариант не рекомендуется. Используйте вызов метода:
а еще лучше так:
ЗЫ: я не уверен, что понял вопрос |
Автор: gcc 13.5.2009, 13:59 | ||||||||
скорее всего так
|
Автор: gcc 13.5.2009, 14:47 |
а как тут опрделеить что возвращать объект или значение? cut_xss ждет что exist должно возвратить объект, правильно? если мне надо иногда возвратить значение, но не объект... как тут сделать? или никак? |
Автор: gcc 13.5.2009, 21:57 | ||||||
например, есть методы:
можно тут сразу два инициализировать?
ошибка! мне говрит что метод cut_xss отсутсвует, потому что объекта нету, он ушел в exist если написать return $self то работает, но объект не всегда нужен! как тут сделать? |
Автор: KSURi 14.5.2009, 11:12 |
Теперь понятно) Возможно, правильнее будет сделать редизайн методов, чем заморачиваться с конструкциями языка. Если вы все-таки уверены, то что должен возвращать метод exist, когда не нужен объект? |
Автор: gcc 15.5.2009, 02:47 | ||||
сделал так, вроде бы работает там не надо было defined ставить перед wantarray
|
Автор: gcc 24.7.2009, 02:46 | ||||||||
есть запись, например:
1) как мне узнать в методе cut_xss() что поле него будет вызывается еще один метод? 2) или как мне узнать в методе cut_xss() что поле него будет вызывается метод exist()? Добавлено через 2 минуты и 37 секунд
вот только как его сделвть? вот тут такой же пример http://forum.vingrad.ru/forum/topic-258166.html если знаете, то покажите пример пожалуйста с редизайном... (если там будет лучше) Добавлено через 9 минут и 46 секунд
интересно, но вот толкьо мне нужно проверить в самом методе exist... UNIVERSAL |