Я хочу передать подпрограмму в качестве параметра в другую подпрограмму.Как передать подпрограмму в качестве параметра в другую подпрограмму
Подпрограмма question
должна передаваться в качестве параметра подпрограмме answer
? Как я могу это сделать с помощью Perl?
question();
sub question {
print "question the term";
return();
}
sub answer() {
print "subroutine question is used as parameters";
return();
}
Вам не нужны скобки после 'return'. Что еще более важно, обратите внимание, что 'return;' (без чего-либо) фактически возвращает 'undef'. Если вы хотите указать, что все прошло хорошо - это всегда очень хорошая идея, вы обычно делаете 'return 1;'. – zdim
@zdim только в скалярном контексте – ysth
@ysth Да, хороший момент, спасибо. В контексте списка это - другая игра, в этом смысле. – zdim