매크로

질문
2015.11.23 10:39

전역변수 질문

조회 수 55 추천 0 댓글 3

아래와 같이 했을경우 빈값이 출력됩니다.

main 이라는 클래스의 nNum의 값이 계속 유지되게 하려고 하는건데

왜 이런건가요?


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


Gui, Add, Button, x20 y65 w160 h40 vbtnStart, 시작
Gui, Show,  x700 y600 h120 w200, %ProgramName% ; 화면보이기


_m = new main()
return


class main
{
 nNum := 0
 
 __New()
 {
 }
 
 setInt(num)
 {
  nNum := nNum + num
 }
 
 getInt()
 {
  return nNum
 }
}

button시작:
 Gui, Submit, Nohide
 
 _m.setInt(1)
 
 msgbox % _m.getInt()
 return


  • profile
    외치기 2015.11.23 13:13
    Gui, Add, Button, x20 y65 w160 h40 vbtnStart, 시작
    Gui, Show,  x700 y600 h120 w200, %ProgramName% ; 화면보이기

    _m := new main()
    return

    class main
    {
     nNum := 0
     
     __New()
     {
     }
     
     setInt(num)
     {
      this.nNum := this.nNum + num
     }
     
     getInt()
     {
      return this.nNum
     }
    }
    button시작:
     Gui, Submit, Nohide
     
     _m.setInt(1)
     
     msgbox % _m.getInt()
     return
  • 천행 2015.11.23 16:27
    제가 원했던 답이네요 감사합니다.
  • profile
    예지력1 2015.11.23 13:16

    인스턴스를 생성하고 변수를 누적하시려면 Static 선언을 해주셔야해요

    인스턴스로 받아서 사용한다면 this 로 누적해도되고요

    class 변수 nNum는 사용하시려면 인스턴스명.nNum 으로 사용하셔야죠!

    인스턴스 생성시 메타함수 __New 에 property(nNum)를 오브젝트에 추가해야 하고요


    클래스 이해를 위해서 예제코드를 작성해봤습니다

    여기서는 인스턴스생성시 새로 값을 넣을꺼에요


    class main
    {
        __New()
        {
            this.var := 5
        }
       
        __Get(aName)
        {
            return aName
        }

        __Set(aName, aValue)
        {
            this.base.Insert(aName, aValue)
        }
       
        SetInt(num)
        {
            static Stack
            Stack += num
            return Stack
        }
       
        Property(num)
        {
            return this.Var * num
        }
    }

    m := new main()
    m.X := 1
    MsgBox % m.X
    m.X := 2
    MsgBox, % m.X


    MsgBox, % m.SetInt(10)
    MsgBox, % m.SetInt(10)


    MsgBox, % m.Property(10)


List of Articles
분류 제목 글쓴이 최근변경 추천
질문 [질문]예지력님 스킨적용에 대해 궁금한게 있습니다. 5 마토깽 2015.11.24 0/0
자유 빈스3678님에게.. 2 리체 2015.11.24 0/0
질문 쓰레드 Thread 문의합니다. 3 천행 2015.11.25 0/0
질문 ABB 가 뭔지 설명해 주실분? 1 신령공주 2015.11.23 0/0
질문 오토핫키 adb ??? 사용법 5 신령공주 2015.11.23 0/0
질문 SciTE4AutoHotkey 사용중인데요 한글입력이 잘안되네요 3 신령공주 2015.11.23 0/0
질문 controlsend 엄청! 간단한질문 2 사군자vv 2015.11.23 0/0
질문 간단한 활용 여부질문 4 신령공주 2015.11.23 0/0
질문 전역변수 질문 3 천행 2015.11.23 0/0
자유 ^^월요일 아침댓바람부터 질문좀 ㅎㅎㅎ.... 2 제발등업좀2 2015.11.23 0/0
질문 채팅매크로같은거 만들려고하는데 좀 도와주실분 계신... 매냐현질 2015.11.22 0/0
질문 비활성화라는게 클릭만 비활성화되는건가요? 6 깡럼 2015.11.23 0/0
질문 비활성 이미치 서치 초보가 간단한 도움말씀 부탁 드립... 2 HyunsD 2015.11.22 0/0
자유 윈드로이앱을 이미지서치 돌리면 매번 킬때마다 이미지... 슬레븐 2015.11.22 0/0
질문 오토핫키 스크립트짜기 도와주실분 ㅠㅠ 1 ddfa4 2015.11.22 0/0
질문 이미지서치와 해상도 관련 질문입니다! 2 궁갤 2016.01.02 0/0
질문 마우스 커서 바꾸는법.. 6글이자 2015.11.22 0/0
질문 오토핫키 동작 중지ㅜㅜ;; 3 신령공주 2015.11.22 0/0
질문 매크로 컴파일이후 윈7호환문제 1 모짱 2015.11.21 0/0
질문 무엇이 문제일까요; 드롭리스트 사용시 7 소리없이 2015.11.22 0/0
Board Pagination Prev 1 ... 136137138139140141142143144 ... 209 Next
/ 209

전체 최신 인기글

전체 주간 인기글