본문 바로가기
programming language/MATLAB

MATLAB persistent

by __observer__ 2011. 3. 27.
반응형

MATLAB 함수 내부의 변수는 함수 사용 후에는 메모리 상에서 지워지게 됩니다.

 

하지만 경우에 따라 함수 내부에서 변수가 계속 유지 되게 할 필요가 있는 경우가 있습니다. 이러한 경우에 persistent keyword 를 사용합니다.

 

다음 예를 통해 persistent 에 대해 알아보죠.

 

아래 그림의 y=persistent_func(a,b) 함수는 a, b 값 입력을 받아서 a+b+c 값을 출력하는 함수 입니다.

 

 

c 값에는 함수 내부에서 메모리상에 계속 남아 있도록 하기 위하여 persistent 로 설정했습니다.

 

그리고 초기값 설정을 위하여 isempty() 함수를 써서 c 값이 비어 있으면 초기값을 설정하도록 하였습니다.

 

위 함수에 대하여 다음과 같이 사용해 보도록 하겠습니다.

 

 

함수 내부에서 c 값이 계속 유지가 되는 것을 확인 할 수 있습니다.

 

 

연관 글: 2011/03/26 - [MATLAB] - MATLAB global keyword



반응형

댓글