How do I overwrite a structure using a switch statement.

조회 수: 3 (최근 30일)
Sylvina Barreto
Sylvina Barreto 2020년 11월 23일
댓글: Rik 2020년 11월 24일
Hello,
I have the following function:
function [A,N] = area(f,a,b,varargin)
%Structure definition
s = struct('fh',f,...
'a',a,...
'b',b,...
'N',64,...
'Tolerance',10^(-6),...
'Algorithm','MiddleSum');
... rest of the code
The structure contains the defaults values that will be used to run the function if the user doesn't provide values for 'N',Tolerance and Algorithm.
I need to use a SWITCH statement to overwrite the structure values if the user does provide any or all of the values, and it must be case insensitive.
So if the user enters area(X^2,0,2,'N',2,'AlGoRithm','TrapeZoid') the structure should replace the default values N=64, algorithm = MiddleSum, with N=2 and Algorithm = Trapezoid.
Can someone please help me?

답변 (1개)

Rik
Rik 2020년 11월 23일
You can copy the code I used in my FEX submissions (see WBM, readfile, BlandAltmanPlot or RegGrow).
If you simply want to overwrite the default values you don't need a switch, you can simply use a loop.
  댓글 수: 4
Sylvina Barreto
Sylvina Barreto 2020년 11월 23일
Hi, yes I looked at them. I'm pretty new with Matlab so it's hard for me to understand what's going on there :/ Do you have a simpler code that could help me a little bit?
Rik
Rik 2020년 11월 24일
Do you have trouble finding which function you need to look at? Did you run any example with the debugger (so you can step through the code line by line)?

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Function Creation에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by