매크로

자유
2015.07.14 13:52

Function(함수)의 이해

조회 수 279 추천 2 댓글 5

아래 질문의 대답을 적다보니 길어져서 댓글보다는 여러 사람들이 보실수 있도록 따로 글쓰기를 하였습니다.

스크립트는 이하 본문이라 칭하겠습니다.


예제1.

전장찾기(변수1,변수2)

{

Sleep, %변수1%

.

.

.

Sleep, %변수2%

}

위의 함수 예문은 함수안에서 본문에서 사용한 변수의 값이 필요할때 인자(변수)로 받아들여 사용한 예입니다.

함수내의 변수명은 본문의 변수명과는 상관없으므로 같아도 되고 달라도 됩니다.

위 함수를 사용할때는

전장찾기(1000,2000) ;이렇게만 써주면 함수를 실행합니다. 인자로 변수를 사용하지 않고 숫자로 바로 주었습니다.

전장찾기(v1,v2) ;본문에서 사용한 변수값(v1,v2)를 인자로 주어 함수안에서 v1,v2의 변수값을 사용하게 됩니다.

첫번째 슬립에 1초, 중간의 명령들을 실행하다, 두번째 슬립에 2초의 할당되어진 변수를 사용합니다.

함수의 인자구분은 ',' 기호를 사용하여 구분합니다.


예제2.

전장찾기()

{

Sleep, 1000

.

.

.

Sleep, 2000

}

위의 함수 예문은 앞의 예문과 같은 동작은 같으나 인자가 필요없는 함수입니다.

전장찾기() ;인자가 필요없으므로 이렇게 쓰면 함수가 실행됩니다.


본문에서 함수를 호출(실행)할때는 본문의 스레드(주)에서 함수에 별도의 스레드(자)를 할당해 독립적인 공간에서

딱 필요한 값만을 스레드(자)에 전달하고 함수의 스레드(자)가 끝날때까지 대기를 하게 됩니다.

할당받은 함수의 스레드(자)는?결과값을 본문의 스레드(주)에 전달하고 종료합니다.

본문의 스레드(주)는 이를 받고 다시 본문의 코드를 계속 진행합니다.

그래서 본문에서 사용했던 변수는 함수안에서는 없는 상태로 진행되므로

함수안에서 필요한 변수는 다시 정의해줘야 합니다.

반대로, 함수안에서 정의하고 사용한 변수는 본문에서 사용된 변수와는

상관없이 작동되고, 함수의 실행이 끝나면 사라집니다.


예제3.

전장찾기()

{

global 변수1, 변수2

Sleep, %변수1%

.

.

.

Sleep, %변수2%

}

위의 예제3은

global 명령으로 본문의 변수를 전역화 시켜 함수안에서 사용한 예입니다.


함수안에서 본문의 변수를 그대로 사용하는 방법은 2가지가 있습니다.

예제1 처럼, 직접 변수를 인자로 건내주는 방법과

global 명령으로 본문의 변수를 전역화 시키는 방법입니다.

global 변수1, 변수2 ;변수1과 변수2를 전역화 시켜 함수안에서도 공용할수 있습니다.


좀 더 얘기하자면,?

ByRef ;인자를 주는것과 반대의 개념, 함수안에서 ByRef로 정의한 변수의 값을 본문에서 돌려받음.

return 변수3 ;리턴값으로 함수의 결과를 전달받을수 있음. - 함수가 끝나기전에 넣어야 합니다.

등이 있으나, 시간관계상 다음기회에....


모두 고수가 되는 그날까지....



List of Articles
분류 제목 글쓴이 최근변경 추천
자유 요즘 오토핫키 공부중입니다 36 고파사탕 2015.08.17 1/0
자유 요즘들어.. 성운이 님의..매크로관련해서 질문이 많이 ... 5 제발등업좀2 2022.12.14 0/0
자유 lsearch 적용방법 아시분 계세요? 5 바유무 2022.12.14 0/0
자유 [클래시오브클랜] 자작오토핫키로 오토파밍하는 영상 7 ddart 2022.12.14 0/0
자유 오토핫키 함수관련 질문이 있을땐 어떤개시판을 이용하... 2 냉면 2015.07.15 0/0
자유 Function(함수)의 이해 5 리체 2015.07.28 2/0
자유 아이폰버전 pushbullet 1.9이하 ipa 파일 가지고 계신... 2 상태님 2015.07.14 0/0
자유 모바게님 감사드려요 ㅎ 1 투혼레몬 2015.07.13 0/0
자유 제발등업좀2 님 좀 도와 주세욥 2 꿈을낚는아이 2015.07.10 0/0
자유 [공유요청]오토핫키 프로그램 어디서 다운로드받나요? ... 3 여포겟프리즈 2015.07.10 0/0
자유 고수님들 도와 주세욥 제발 ㅠㅠ 3 꿈을낚는아이 2015.07.10 0/0
자유 이 스크립트 문제점좀 봐주세요 5 로맨티스트 2015.07.10 0/0
자유 밀크탭 for kakao(블루스택전용 연타매크로) - 비활성 ... 로맨티스트 2015.07.08 0/0
자유 오토핫키 ...질문 및 요청좀 ㅠ.ㅠ 17 강남몬드 2015.07.08 0/0
자유 이미지버튼 마우스HOVER 효과 2 우후훅 2015.07.03 0/0
자유 젤 처음에 오핫키로 짠 소스보니 추억이 살포시 나네요~ㅎ 4 칼시이나 2015.06.27 0/0
자유 오토 핫키?? 3 굵은팔뚝 2015.06.24 0/0
자유 장난 삼아 만든 레이븐 지니모션 키보드 스킬... 2 헐키 2015.06.12 0/0
자유 쿠키런 오토핫키 매크로 아직되나요? 19 강남앞집오빠 2018.12.24 0/0
자유 아무 지식없이 오핫한테 덤볏다가... 3 레이봉11 2015.06.07 0/0
Board Pagination Prev 1 ... 161718192021222324 ... 28 Next
/ 28

전체 최신 인기글

전체 주간 인기글