같은 이름의 패키지에서 다른 디렉토리에있는 다른 패키지의 함수를 호출하려고합니다. 함수도 같은 이름입니다.같은 이름의 함수를 같은 이름의 패키지에서 가져 오기
설명 : sub fun1
내가 두 번째 패키지는 anothee 디렉토리 안에
package package1;
sub fun1($$$)
{
#anything;
}
통화 할 일이 내부의 내가 dir1/package1.pm
로 dir1/
에 존재 package1.pm
을 가정 해 봅시다 : dir2/package1.pm
를
package package1;
sub fun1($$$)
{
#anything;
}
함수는 같은 수의 매개 변수를 사용합니다.
정확히 원하는 기능을 호출하는 방법은 무엇입니까?
둘 모두를 동일한 프로세스에서 사용 하시겠습니까? 같은 것을 다른 버전으로 사용하는 것입니까? – simbabque
정규화 된 이름을 사용하는 데 문제가 있습니까? – zdim
당신이 묻고있는 것을하기 위해 내 마음에 오는 가장 순진한 방법은 좋은 방법이 아니지만 (경고를 불러오는) 좋은 방법은 아니지만 (여전히 추천하지는 않습니다. 그래서 대답으로 게시하지 않습니다) : 'unshift @INC, "yourpath/dir1"; do 'p1.pl'; package1 :: sub1(); shift @INC; unshift @INC, "yourpath/dir2"; do 'p1.pl '; package1 :: sub1(); ' – yonyon100