当前位置:编程学习 > Matlab >>

Matlab 自定义函数的参数个数问题。

在Matlab命令窗口输入“plot( ”时会自动弹出提示,如: plot(Y) plot(X1,Y1,...,Xn,Yn) plot(X1,Y1,LineSpec,...,Xn,Yn,LineSpec) plot(...,'PropertyName',PropertyValue,...) plot(axes_handle,...) h = plot(...) 提示你可以按以上一种格式输入参数。 我想请问自定义函数可以做到这样吗?该怎么做呢?谢谢!
补充:我的意思是像plot等函数一样有多个提示,可任选一种形式来填写参数。
大家帮帮忙呀,谢谢了!
追问:我是想的到多个提示,因为自定义函数别人不知道该填写什么样的参数,所以得有提示。
你能详细说说你的想法吗?谢谢!我的意思是像plot等函数一样有多个提示,可任选一种形式来填写参数。
你这种方法得到的提示也只有一种呀,即myplot(x, y, npts, angle, subdiv)。
 
难道我的这种想法真的是异想天开?这样只有一个提示,即:func(x,y,z),我的意思是像plot等函数一样有多个提示,可任选一种形式来填写参数。哦,还是谢谢你!也希望还有热心人有办法,相信总有办法的!你好,谢谢你的帮助,可以给个具体的示例吗(详细代码)?在这里再次表示感谢!不好意思,本来是想设你的为满意答案的,但是看错了,把别人设为满意了,又不知道怎样修改。真不好意思!十分感谢你的帮助!!!
答案:你可以定义多个带参数的函数啊,传不同的参数进去,然后函数体不一样,在函数体里面你可以根据你所需的编写
其他:可以,比如c与参数x,y,z都相关,那么函数func可以写为:

function c=func(x,y,z)

...
return 1. 其实 titansports1就是你要的方式:
你就通过输入参数的个数来判断是采用哪种计算方式(参数只是个名字而已,x1也可以看成是Y的)
你要注意到plot的不同调用方式的参数肯定是不相同的或者是参数的数据类型不同(如实数和字符串)
有点像c++中的函数重载了。 

2. 至于自动提示的方法可以这样
在函数的开始处加上一段代码:
if nargin==0
disp('函数的使用方式1')
disp('函数的使用方式2')

disp('函数的使用方式3')


end 

上一个:Matlab解方程组时 提示错误' is not a valid expression or equation. 下面的程序哪错了
下一个:求非线性偏最小二乘回归的MATLAB程序及实例,急用,谢谢!

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,