런타임에 Perl 심볼 테이블에서 메소드를 제거해야합니다. 나는이 기능을 삭제하지만 흔적을 남기지 않고 undef &Square::area을 사용하여 이것을 시도했다. 특히 $square->area()이 호출되면 Perl은 "Undefined subroutine & Square :: area"대신 "CODE reference가 아닙니다"라고 불평합니다. "
typeglob의 첫 번째 예제에는 두 번째 예제와 비교하여 단점이 있습니까? package Some::Module::Win32;
use strict;
use 5.10.0;
use Exporter 'import';
our @EXPORT_OK = qw(public);
use Some::Module;
*_func_one = \&Some::Mod
파일 이름이나 다양한 파일 핸들 또는 형식 글로블을 전달할 수있는 함수가있는 경우 함수가 이러한 인수를 구별 할 수있는 방법은 무엇입니까? 예를 들어 차이를 말하면 (예 : *DATA과 *STDIN 사이)? 지금까지받은 답변을 기반으로 업데이트 된 코드 감사합니다. use strict;
use warnings;
use FileHandle;
sub f
Perl에서는 다음과 같은 두 가지 구문이 다르지 않습니까? *main::foo = *main::bar
$main::{foo} = $main::{bar}
*main::foo에있는 모든 슬롯을 *main::bar에 정의 된 슬롯으로 앨리어스하는 동일한 기능을 갖고있는 것으로 보입니다),하지만이 동등성이 항상 유지되는지 궁금합니다.