Main Content

global

변수를 전역으로 선언

설명

예제

global var1 ... varN은 변수 var1 ... varN을 전역 범위로 선언합니다.

일반적으로 각 MATLAB® 함수는 다른 함수나 기본 작업 공간의 변수와는 별개인 자체 지역 변수를 가집니다. 그러나 여러 함수가 한꺼번에 한 특정 변수 이름을 global로 선언하면, 이 모든 함수는 하나의 같은 변수를 공유하게 됩니다. 그리고 아무 함수에서나 이 변수를 변경하면 그 변수를 전역으로 선언한 모든 함수에서 그 변경 사항을 볼 수 있습니다.

global 문을 처음으로 실행했을 때 전역 변수가 존재하지 않는 경우에는 빈 0x0 행렬로 초기화됩니다.

현재 작업 공간에 전역 변수와 동일한 이름을 갖는 변수가 이미 존재할 경우 MATLAB은 경고를 발생시키고 해당 변수의 값과 범위를 전역 변수에 맞게 변경합니다.

예제

모두 축소

현재 작업 폴더에 전역 변수의 값을 설정하는 함수를 만듭니다.

function setGlobalx(val)
global x
x = val;

현재 작업 폴더에 전역 변수의 값을 반환하는 함수를 만듭니다. 이 두 함수는 각기 다른 함수 작업 공간을 가지지만, 두 함수 모두 전역 변수에 액세스할 수 있습니다.

function r = getGlobalx
global x
r = x;

전역 변수 x의 값을 설정하고 다른 작업 공간에서 이 값을 가져옵니다.

setGlobalx(1138)
r = getGlobalx
r =

        1138

이전 예제에서 정의한 함수를 사용하여 전역 변수에 값을 할당합니다.

clear all
setGlobalx(42)

전역 변수 x의 값을 표시합니다. 이 변수가 전역 변수이지만 명령줄에서는 이 변수에 액세스할 수 없습니다.

x
Undefined function or variable 'x'.

명령줄에서 x를 전역 변수로 선언하고 이 변수의 값을 표시합니다.

global x
x
x =

    42

x의 값을 변경하고 이전 예제에서 정의한 함수를 사용하여 다른 작업 공간에서 이 전역 값을 반환합니다.

x = 1701;
r = getGlobalx
r =

        1701

  • 모든 작업 공간에서 전역 변수를 지우려면 clear global variable을 사용하십시오.

  • 현재 작업 공간에서만 전역 변수를 지우고 다른 작업 공간에서는 지우지 않으려면 clear variable을 사용하십시오.

버전 내역

R2006a 이전에 개발됨