함수 B에서 함수 B를 호출하는 함수 A가 있습니다. 함수 A를 종료하려고합니다. 주요 문제는 함수 A가 실행되지 않는 경우에만 함수 B가 실행될 수 있다는 것입니다. ctr + c와 같은 버전의 스크립트는 없지만이 기능은 종료되어야하지만 다른 기능은 필요하지 않기 때문에 원하는 것은 아닙니다. 이것을 할 수있는 방법이 있습니까? Matlab : 다른 함수에서 함수 종료
**function A**
B(varargin)
end
**function B(varargin)**
kill_function_A
some more statements
end
나를 더 분명이 있도록 수정하자
**function A**
if some_statement_is_true
B(varargin)
end
much more code
**function B(varargin)**
terminate A
update A (this is the reason why it needs to be terminated)
A (restart A, since it is now updated, I can terminate B within A if it is active)
end
가 B를 실행할 수 있습니다 전에 종료 할 필요가 있습니다 마십시오. 그래서 "B; return"은 불가능합니다. (지금까지 모든 답변에 대해 감사드립니다)
이것은 불가능합니다. 함수 A를 종료하는 모든 메소드는 B를 종료하고 A의 호출자에게 리턴합니다. – Daniel
요청할 수있는 경우, 이것을 위해 무엇이 필요합니까? –
"업데이트 A"는 A가 글로벌 상태임을 나타내므로 글로벌 사용 중임을 나타냅니다. (예 : http://en.wikipedia.org/wiki/Code_smell) 변수가 맞습니까? –