9
나는 함수 makeFunction(data)
을 쓰고있다. 행렬, 벡터 또는 스칼라가 아닌 함수를 반환하기를 원합니다. 어떻게해야합니까?MATLAB에서 함수를 출력 값으로 반환하려면 어떻게해야합니까?
나는 함수 makeFunction(data)
을 쓰고있다. 행렬, 벡터 또는 스칼라가 아닌 함수를 반환하기를 원합니다. 어떻게해야합니까?MATLAB에서 함수를 출력 값으로 반환하려면 어떻게해야합니까?
함수 핸들을 사용하십시오.
function f = functionReturner(u)
% creates the function x.^u to return as an example
f = @(x) x.^u;
이 함수를 저장하면 functionReturner를 호출하면 인수 자체가 함수가됩니다.
f = functionReturner(3);
f(2.5)
ans =
15.625
당신은 충분히 쉽게 15.625 실제로 2.5^3임을 확인할 수 있습니다.
익명 기능을 사용하지 않고이를 수행 할 수있는 방법이 있습니까? – Will
@Will - 어떤 문제를 해결하려고하는지, 심지어 MATLAB이 사용중인 것을 알지 못합니다. 왜 지금 당신이 대답에 제약을 가하는 이유가 있습니까? 불의한 동기가 있다면 우리 모두를 추측하기보다는 알려주십시오. 크리스탈 공을 읽는 것은 언젠가 너무 어렵습니다. –
익명 부품으로 인해 문제가 발생하면 하위 함수에 대한 일반 함수 핸들도 작동합니다. – Peter