본문 바로가기

Perl

[Perl] subroutine에 array를 파라메터로 넘기기.

http://stackoverflow.com/questions/10729015/pass-array-and-scalar-to-subroutine-perl



perl에서 subroution을 작성하고, 파라메터를 넘길경우 일반적으로 아래와 같이 받는다.


my($a, $b, $c) = @_;


그런데 array를 파라메터로 넘기고 싶은 경우 ... 아래와 같이..


callsub(@array, 2,3);


단순히 이렇게 받으면 될줄 알았다.


my(@a,$b,$c) = @_;


그런데.. $b, $c가 제대로 넘어오지 않는다.. 찾아보니 파라메터 자체가 array로 인식이 되는것 같다.

그래서 아래와 같은 방법들을 사용하라고 되어있다.



첫번째는 배열 파라메터를 제일 뒤로...
두번째는 배열의 레퍼런스를 넘기고 그걸 받아서 다시 배열화 시키는 방법.