|
|
可以试试exist,因为isempty是判断一个变量是否为空,但是前提是这个变量是存在的。
$ i/ C4 C) G+ F3 B% l& ]- L! b; x$ H9 [* I" D4 f$ f; x% E
function out = fun (in, P)$ R+ R/ h& E6 ^7 O; r' E5 H% o0 \$ ]
% if isempty(P) % 失败
0 q$ d: f( @4 D* E o" R$ U# S- X; X3 `% if P == [] % 失败( D3 K& ^. N* R% ]" j9 U# T
if ~exist('P','var') % 用'var'限定下更好,不用也可以4 Z* h+ O0 \! H1 e8 L; l" b
% if nargin<2 % 通过,但我不喜欢# C" o- w+ Z6 C* Y3 i" n
% 使用参数P的默认值
8 h! G0 ^4 R! ~0 l# z3 v9 Aelse
6 r Y8 K e- q % 使用传入的参数P
, |& |- ?& l" b& _2 `% Nend
8 H9 m. D0 w1 W. e7 [! \3 S) E% ……
% K; M4 n" o( N1 @% matlab6.5 测试通过' N0 a) f, Z3 t- i5 A" b/ Z
|
|