在CGI.pm里面,END_OF_FUNC之类的东西怎么样?

时间:2011-07-12 05:42:10

标签: perl

3643 '_compile_all' => <<'END_OF_FUNC',
3644 sub _compile_all {
3645     foreach (@_) {
3646         next if defined(&$_);
3647         $AUTOLOAD = "CGI::$_";
3648         _compile();
3649     }
3650 }
3651 END_OF_FUNC
3652
3653 );
3654 END_OF_AUTOLOAD
3655 ;

END_OF_FUNCEND_OF_AUTOLOAD如何在这里工作?

2 个答案:

答案 0 :(得分:3)

那是here-doc syntax,它只是一种编写字符串的方式。

答案 1 :(得分:1)

它是几乎过时的AutoLoader机制的一部分,它通过仅在首次引用时定义函数来尝试节省很少的时间。它保存在CGI中主要是出于兼容性原因;没有充分的理由以这种方式编写任何新代码。