2010.01.14 01:24

8. 전역변수

조회 수 6040 추천 수 1 댓글 7
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

이전 강의에서는 일반적인 변수 선언을 배워 봤습니다.

지금까지 툴을 기본적으로 만져오신분들이라면 변수는 변수의 조작이란 기능을 통해서 만져왔다는 것을 사실 알고 있습니다.

그곳에 저장되있는 변수는 바로, 게임상에 운용되어 미리 생성되어 있는 변수를 사용하는 것입니다.

 

그 변수들은 어떤 이벤트든 어떤 커먼이벤트들이든 모두 사용할 수 있습니다.

이는 이 변수가 어디든 다 먹힌다는 겁니다.

 

가령, 우리나라에서 쓰는 돈은 한국돈이라고 하지만

미국의 화폐는 달러이지만, 전세계가 공용으로 쓰는 세계 표준 화폐입니다.

 

이전 시간에 배운 변수는 한국돈이라고 한다면 지금 배우는 전역변수는 세계 표준 화폐입니다.

모두가 쓸수 있는 변수죠.

 

전역변수는 특이하게 $ 란 특수문자를 변수명 앞에 기입을 합니다.

이는 변수가 전역변수인가 지역변수인가 후에 나오는 인스턴스변수(인스턴스 내 쓰는 변수) 인가를 구별 짓기 위함입니다.

 

자 이를 좀더 이해 시켜보면 이렇습니다.

 

전역변수 : 전체 쓰는변수

지역변수 : 부분만 쓰는 변수

 

 

이벤트를 열고 스크립트 기능을 다시 엽니다.

 

그 내용은 이와 같이 적습니다.

 

$a = 3

a=4

def test

  a = 5

  return a

end

 

b = test

 

p $a

p a

p b

 

한방에 구별이 되실 것 입니다.

 

test라는 함수를 만들고 그 함수 속있는 a에 5를 대입합니다. 그리고 b에 선언해서 대입되었으니

b는 지역변수 a의 값을 고스란히 받아옵니다.

하지만 함수 밖 a는 값을 가지고 있지 않습니다. 함수 안에 a와 밖에 a는 서로 다른 위치에 있기 때문입니다.

$a는 3이 대입됩니다.

 

결과는

$a    3

a     4

b     5

 

가 됩니다.

 

 

<추가 설명>

 

 

전체 내용 ======================================

 

$a 선언

 

함수 안속-----------------------------------------------------ㄱ

   a 선언

ㄴ------------------------------------------------------------------

p $a

p a

===============================================

 

자 여기서 느껴야 하는 것은

함수 안속에서, a 선언한것은 함수 밖에 전체 내용의 a와 전혀 다른녀석이라는 것을 증명하는 것입니다.

 

실예로

우리반 영희와 우리동네 영희는 다른 인물이다.

 

즉, 우리반안에 있는 영희하고, 우리동네, 내가 살고있는 우리동네 영희하고는 다른애라는겁니다.

밖에 있는 영희는 $을 손에 쥐고 있고 안에 있는 영희는 그냥 영희 인겁니다.

  • ?
    슬픈혼잣말 2010.01.14 01:39

    이건쫌어렵다 ㅠㅠ

  • ?
    곤지컴 2011.02.13 12:18
    설명존니스트어렵네요
  • ?
    미오사랑 2011.08.12 08:25

    설명을 잘 하시네요~~ 잘 보고 가요

  • ?
    XP 팬 2011.12.10 10:16

    아 어렵다 왜 b가 5가 되는거지

  • ?
    By윤 2011.12.23 21:05

    아 갑자기 어려워졌다

    뭔소린지 띵 돌아버리겠다

  • ?
    By윤 2011.12.23 21:19

    음 자세한건 아니지만 그냥 기본적인정도는 이해했다..

  • ?
    홍예찬 2013.02.03 16:10

    의외로 간단함?

     

     



Copyright ⓒ Nioting All Rights Reserved. (since 1999)    개인정보
        

Fatal error: Cannot access property sessionController::$lifetime in /web/old/xe/modules/session/session.controller.php on line 45