how to use varagin with parameter
조회 수: 3 (최근 30일)
이전 댓글 표시
function definedAndVariableNumInputs(X,Y,varargin)
disp("Total number of input arguments: " + nargin)
formatSpec = "Size of varargin cell array: %dx%d";
str = compose(formatSpec,size(varargin));
disp(str)
if varargin{1}=="f"
??
end
varargin{2}=="b"
??
end
acceptVariableNumInputs(3,4,"b")
hi,I want to call the function with additional parameters
If I pass the parameter called "f" I want to pass it the value 3
If I pass the "b" parameter I want to pass the value 5
(it's an example)
Now with varagin I can see the values I pass but not what they refer to... how to do this?
Example I just want to pass it the value of parameter "b" ..
How does the function understand that the only parameter passed refers to "b"?
댓글 수: 1
Voss
2023년 9월 19일
It's not clear what you are trying to do.
Can you write down a few examples of how this function would be called and how it should interpret the input arguments in each case?
답변 (2개)
Matt J
2023년 9월 19일
편집: Matt J
2023년 9월 19일
Another possibility:
out=definedAndVariableNumInputs(10,20,f=3)
function out=definedAndVariableNumInputs(X,Y,varargin)
out.X=X;
out.Y=Y;
out.f=[];
out.b=[];
settings=struct(varargin{:});
for f=string(fieldnames(settings));
out.(f)=settings.(f);
end
end
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 Transmitters and Receivers에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!