Perl6의 메소드 선언에서 더하기는 무엇을 의미합니까? 여기 perl6의 메소드 선언에서 더하기는 무엇을 의미합니까?
는 specsubmethod BUILD (+$tail, [email protected], *%extraargs) {
$.tail = $tail;
@:legs = @legs;
}
Perl6의 메소드 선언에서 더하기는 무엇을 의미합니까? 여기 perl6의 메소드 선언에서 더하기는 무엇을 의미합니까?
는 specsubmethod BUILD (+$tail, [email protected], *%extraargs) {
$.tail = $tail;
@:legs = @legs;
}
(2015 9월) 래리 벽 +
parameter prefix 새로운 브랜드, slurpy (variadic) parameters을 의미 네 개의 매개 변수 접두사 (*
, **
, +
, |
) 중 하나를 소개했다. 그는이 새로운 접두어를 Rakudo Perl 6 컴파일러에 추가했으며, a brief informal description of it on #perl6이라는 몇 가지 테스트를 추가했으며 관련 언어 디자인 문서에 a section on it을 추가했습니다.
원래 질문에서 인용 된 예는 10 년 전에 작성되고 고정 된 비공식 문서의 보관소에서 가져온 것입니다. 그 당시 +
매개 변수 접두사는 a named parameter as contrasted with a positional one을 의미합니다. 요즘 우리는 :
을 사용합니다. 따라서
submethod BUILD (:$tail, :@legs, *%extraargs) {
$.tail = $tail;
@.legs = @legs;
}
귀하의 "사양"링크에서 예입니다 역사적 문서로 이동하고, 구문은 오랫동안 나는 어쩌면 그것이 어떻게 사용 모르겠어요 펄 6. 사라 졌 "적어도 하나의 인수", 정규식의 +
한정 기호와 유사합니다.
최신 사양은 서명 및 서브 루틴에 대한 모든 정보가 포함 된 http://perlcabal.org/syn/S06.html을 참조하십시오. 일주일 전에 약