![]() |
Модераторы: korob2001, ginnie |
![]() ![]() ![]() |
|
Wowa |
|
|||
Эксперт ![]() Профиль Группа: Админ Сообщений: 15017 Регистрация: 14.9.2000 Где: Винград Репутация: нет Всего: 290 |
$temp='Calc';
Как мне теперь через переменную $temp вызвать подпрограмму Calc ? |
|||
|
||||
*NS* |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 299 Регистрация: 26.3.2002 Репутация: нет Всего: нет |
хмм
а для чего это надо? по подробнее объясни плз -------------------- ну, все, что знал - рассказал... |
|||
|
||||
Wowa |
|
|||
Эксперт ![]() Профиль Группа: Админ Сообщений: 15017 Регистрация: 14.9.2000 Где: Винград Репутация: нет Всего: 290 |
Поступают скрипту некие параметры, он на них смотрит, и исходя из этого должен запускать соответствующую подпрограмму.
Для простоты понимания: name.pl?sub=edit Вот мне и надо, глядя на $in{sub} запустить подпрограмму edit Делать все через if () {} elsif {} elsif {} ..... не хочется. Устроил бы вариант типа: &$in{sub}; ![]() ![]() ![]() Есть альтернатива? |
|||
|
||||
*NS* |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 299 Регистрация: 26.3.2002 Репутация: нет Всего: нет |
по моему нету...
только через иф елзе... -------------------- ну, все, что знал - рассказал... |
|||
|
||||
BlackLFL |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 263 Регистрация: 15.9.2005 Где: Москва Репутация: 8 Всего: 12 |
|
|||
|
||||
tishaishii |
|
||||||
![]() Создатель ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1262 Регистрация: 14.2.2006 Где: Москва Репутация: 4 Всего: 8 |
Нафига?
|
||||||
|
|||||||
arto |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1495 Регистрация: 31.10.2004 Репутация: 38 Всего: 40 |
1. *f = "func"; f();
2. %h = ('func' => \&func); $h{'func'}(); |
|||
|
||||
sharq |
|
|||
![]() Perl Liker ![]() ![]() Профиль Группа: Участник Сообщений: 841 Регистрация: 13.12.2004 Где: Ростов-на-Дону Репутация: 23 Всего: 28 |
Wowa,
Я считаю, что так не разумно! Нужно определено писать и названия ключа и значения не должны совпадать с названиями функциями, как же безопастность??? Плюс - вдруг захочешь поменять название функции или ключа, тогда как быть? Так что подумай, может лучше все-таки написать пару строк. ![]() ![]() Это сообщение отредактировал(а) sharq - 16.3.2006, 12:00 -------------------- [color=gray]There's More Than One Way To Do It[/color] |
|||
|
||||
regis |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 232 Регистрация: 12.12.2005 Где: Москва, Россия Репутация: нет Всего: 7 |
Запихнуть в хэш имена параметров в качестве ключей, и ссылки на функции -- в качестве значений.
Куда более элегантное, и проще сопровождаемое решение, чем верница if/else... --------------------
В. В чем разница между hardware и software?О. В отличие от второго, по первому можно двинуть кулаком или пнуть ногой. |
|||
|
||||
nitr |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2543 Регистрация: 10.2.2006 Где: Россия :) Репутация: 37 Всего: 84 |
См. в форуме любую замену switch/C =)
|
|||
|
||||
tishaishii |
|
|||
![]() Создатель ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1262 Регистрация: 14.2.2006 Где: Москва Репутация: 4 Всего: 8 |
Это сообщение отредактировал(а) tishaishii - 18.3.2006, 01:32 |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Perl" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Perl: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |