클래스 전역 변수인 연관 배열 업데이트안녕하세요,
연관 배열인 클래스 변수가 있습니다.
define class (
"class name",
ass_array = associative array ();
meth1 = method({x,y},
for(i = 1, n <= n items(x),i++
xi = x[i];
yi = y[i];
try(
ass_array << insert(xi, Insert(eval list(ass_array[eval(xi)]), eval(yi))),
ass_array << insert(xi, List(eval(yi)))
);
);
);
);하지만 연관 배열을 업데이트하기 위해 이 클래스를 호출하면 배열이 여전히 비어 있습니다. 이견있는 사람?
연관 배열을 업데이트하기 위해 클래스 외부에서 이 구문을 테스트했으며 예상대로 작동했다는 점도 주목할 가치가 있습니다.
자동화 및 스크립팅윈도우Re: 클래스 전역 변수인 연관 배열을 업데이트합니다.초기화 방법을 추가하고 싶을 수도 있습니다
Names Default To Here(1);
Define Class("class name",
ass_array = Associative Array();
_init_ = Method({},
this:ass_array = ass_array;
);
meth1 = Method({x, y},
ass_array = Associative Array();
For(i = 1, i <= N Items(x), i++,
xi = x[i];
yi = y[i];
Try(
ass_array << Insert(xi, Insert(Eval List(ass_array[Eval(xi)]), Eval(yi))),
ass_array << Insert(xi, List(Eval(yi)))
);
);
);
);
cn = New Object("class name");
show(cn:ass_array);
cn:meth1({"a", "b"}, {"c", "d"});
show(cn:ass_array);
이것은 필요하지 않으며 사용해야 하는지 잘 모르겠습니다(그러나 여기에서는 https://www.jmp.com/support/help/en/18.0/#page/jmp/advanced-classes에서 사용됩니다. shtml#ww761769 )
Re: 클래스 전역 변수인 연관 배열을 업데이트합니다.안녕하세요,
그래서 init 메소드가 있습니다. 나는 게으름 때문에 수업의 전체 흐름을 두지 않았습니다. 문제를 해결하는 것이 필요하다고 생각하지 않았습니다.
Re: 클래스 전역 변수인 연관 배열을 업데이트합니다.그러나 this:array를 사용하여 변수를 인스턴스화하는 것은 효과가 있었던 것 같습니다.
이것이 왜 차이를 만드는가?
Re: 클래스 전역 변수인 연관 배열을 업데이트합니다.Define Class를 사용하는 방법에 대한 설명이 제공될 수 있습니다.