다음은 채플에서 다시 작성해야하는 파이썬 계열 패턴입니다.채플 클래스의 속성에 배열 할당
class Gambler {
var luckyNumbers: [1..0] int;
}
var nums = [13,17,23,71];
var KennyRogers = new Gambler();
KennyRogers.luckyNumbers = for n in nums do n;
writeln(KennyRogers);
는 런타임 오류가 나는 케니 사전에해야합니다 내가 그 시간에 케니을 인스턴스화 할 수 없습니다 얼마나 많은 운이 번호를 모르는
Kenny.chpl:8: error: zippered iterations have non-equal lengths
를 생성합니다. 즉, 나중에 할당해야합니다. 또한 언제 그들을 붙들고, 언제 접을 지 알 필요가 있습니다.
것은 해석하기 위해 : 크기를 조정하지 않고이 작업을 수행하기 위해, 당신은 배열의 도메인을 선언하고뿐만 아니라 초기화에서 설정해야이 오류를 얻고있는 이유는 그 luckyNumbers에 할당 프로그램에서 효과적으로 해석된다 :'(ln, n) zip (KennyRogers.luckyNumbers, nums) do ln = n "이고 luckyNumbers는 크기가 0이고'nums '는 아마도 그렇지 않다는 것 때문에, 다른 크기/길이 – Brad