필터 지우기
필터 지우기

argin for a class method ?

조회 수: 9 (최근 30일)
marilia15
marilia15 2012년 3월 13일
fx = 'addme'; % the name of a function
nargin(fx) %returns the number of input arguments
ans =
2
I want to use "nargin" for a class method But I get an error.
fx='classname.methodname'
nargin(fx)
Error using ==> nargin
Not a valid M-file.
I want to call nargin from outside the class, for example in command window. What can I do?

채택된 답변

Jacob Halbrooks
Jacob Halbrooks 2012년 3월 13일
NARGIN does not currently (as of R2012a) work on class methods. However, you might be able to get the information you want by inspecting the metaclass for your class with the ? operator. For example, try:
metaInfo = ?classname
methodInfo = metaInfo.MethodList
firstMethodInputs = methodInfo(1).InputNames
For a given method, you could find the MethodList entry with a matching name and then count InputNames to get the number of inputs. You'd also want to check if the last input is named varargin.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Argument Definitions에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by