2012-12-04 8 views

답변

3

"글로벌"h을 사용하려는 모든 곳에서 h을 글로벌로 선언해야하며 여기에는 본체가 포함되어야합니다. 프롬프트에 global h을 입력하면 문제가 없습니다. documentation을 참조하십시오. 다음은 나를 위해 잘 작동합니다 :

octave> function M = getA(X) 
> global h; 
> M = h; 
> endfunction 
octave> h = 0.01 
h = 0.0010000 
octave> getA 
ans = [](0x0) 
octave> global h 
octave> h 
h = [](0x0) 
octave> h = 0.01 
h = 0.010000 
octave> h 
h = 0.010000 
octave> getA 
ans = 0.010000 

그러나 정말로, 당신은 전역 변수를 사용하지 말아야합니다. 이것은 정말 나쁜 습관입니다. 변수를 인수로 전달하십시오. 동일한 변수 그룹을 전달하면 struct를 전달하지만 전역 변수는 사용하지 마십시오.

편집 :this과 같은 질문입니다.

+0

감사합니다. 죄송합니다 .. – user1854885

관련 문제