질문과 답변

Extra Form

예를들어

$game_actor.base_atk.n 이라고 하면

class Game_actor에

def base.atk의

변수 n 를 일컫는 명령어 같은거 없나요?...

Who's 코아 코스튬

?

안녕하세요 ^^

WebEngine 입니다. ^^


Game 제작에서 Web 제작으로 옮겼어요 ^^

http://www.webengine.co.kr/

Comment '4'
  • ?
    코아 코스튬 2010.10.30 15:54

    역시 없는건가요?ㅠㅠㅠㅠ

  • ?
    허걱 2010.10.30 16:09

    n이 그냥 함수내에서만 선언되서 사용되는건 접근 방법이 없습니다.

    함수내에서 사용되는 변수에 접근하려면 먼저 그 변수를 클래스 변수로 만들어 쓰고

    그 다음은 함수로 만들어서 값을 돌려주던가 접근권한을 주던가 해야 하는...

    클래스 변수는 @n  같은걸 말하는거고

    함수로 만드는건

    def n

    return @n

    end

    이런식으로 만들어 주는거고

    접근 권한을 주는건

    attr_reader :n

    혹은 attr_writer, attr_accessor 등을 써줘서 읽게 하던가 쓰게하던가 모든권한 주던가...

    그렇게 해주지 않고 그냥 함수내에서 일반 변수로 쓰인건 접근 할 방법이 없습니다.

  • ?
    허걱 2010.10.30 16:56

    기존 스크립트 보시면 클래스명 바로 아래쪽에 그런식으로 쓰인게 많이 보이실건데..

    위에서 말했듯이 일단 클래스 변수로 만들어 주고 써주시면 됩니다.

    class Test

       attr_reader :n

       def initialize

          @n = "abc"

       end

    end

    #############

    test = Test.new

    p test.n    # =>   "abc"

    이런 식으로 클래스 내부의  변수를 읽을 수 있습니다.

  • ?
    코아 코스튬 2010.10.30 16:11

    그럼 읽게 하게 한뒤에 불러오는 방법은요?..

    attr_reader :n

    하고 불러오는 방법


List of Articles
종류 분류 제목 글쓴이 날짜 조회 수
공지 묻고 답하기 가이드 습작 2014.06.14 12442
Board Pagination Prev 1 ... 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 Next
/ 83