Main Content

이 번역 페이지는 최신 내용을 담고 있지 않습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.

varargin

가변 길이 입력 인수 목록

구문

설명

varargin은 함수 정의문의 입력 변수로, 이를 사용하면 함수가 임의 개수의 입력 인수를 받을 수 있습니다. 소문자를 사용하여 varargin을 지정합니다. 명시적으로 선언한 입력값 다음에 varargin을 마지막 입력 인수로 포함시켜야 합니다.

함수가 실행되면 varargin은 1×N 셀형 배열이 되고, 여기서 N은 명시적으로 선언된 입력값 다음에 함수가 받게 되는 입력값 개수입니다. 명시적으로 선언된 입력값 다음에 함수가 입력값을 받지 못한 경우 varargin은 빈 셀형 배열입니다.

예제

예제

모두 확장

이름이 acceptVariableNumInputs.m인 파일에 가변적인 개수의 입력값을 받아 그 입력값의 값을 각각 표시하는 함수를 정의합니다.

type acceptVariableNumInputs
function acceptVariableNumInputs(varargin)
    disp("Number of input arguments: " + nargin)
    celldisp(varargin)
end

여러 개의 입력값을 포함한 함수를 호출합니다.

acceptVariableNumInputs(ones(3),'some text',pi)
Number of input arguments: 3
 
varargin{1} =
 
     1     1     1
     1     1     1
     1     1     1

 
 
varargin{2} =
 
some text
 
 
varargin{3} =
 
    3.1416

 

이름이 definedAndVariableNumInputs.m인 파일에, 두 개의 입력값을 기본으로 받고 추가 개수의 입력값을 허용하는 함수를 정의합니다.

type definedAndVariableNumInputs
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)

end

여러 개의 입력값을 포함한 함수를 호출합니다.

definedAndVariableNumInputs(7,pi,rand(4),datetime('now'),'hello')
Total number of input arguments: 5
Size of varargin cell array: 1x3

2개의 입력값을 포함하여 함수를 호출합니다. varargin은 빈 셀형 배열입니다.

definedAndVariableNumInputs(13,42)
Total number of input arguments: 2
Size of varargin cell array: 0x0

이름이 variableNumInputAndOutput.m인 파일에 가변적인 개수의 입력값과 출력값을 받는 함수를 정의합니다.

type variableNumInputAndOutput
function varargout = variableNumInputAndOutput(varargin)
    disp(['Number of provided inputs: ' num2str(length(varargin))])
    disp(['Number of requested outputs: ' num2str(nargout)])
    
    for k = 1:nargout
        varargout{k} = k;
    end
end

입력값 2개와 출력값 3개를 포함한 함수를 호출합니다.

[d,g,p] = variableNumInputAndOutput(6,'Nexus')
Number of provided inputs: 2
Number of requested outputs: 3
d = 1
g = 2
p = 3

입력값이나 출력값 없이 함수를 다시 호출합니다.

variableNumInputAndOutput
Number of provided inputs: 0
Number of requested outputs: 0

확장 기능

버전 내역

R2006a 이전에 개발됨

모두 확장