這是一個我需要在Chapel中重新創建的類似Python的模式。將一個數組分配給Chapel類中的一個屬性
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在你的程序中被有效地解釋爲:'for(ln,n)in zip(KennyRogers.luckyNumbers,nums)do ln = n「並且由於luckyNumbers的大小爲0,'nums'大概沒有,所以這是一個拉鍊不同的大小/長度 – Brad