2023. 7. 31. 22:52ㆍ프로그래밍
사실 전 블로그에서 우리는 이미 함수를 사용해 봤습니다
https://blueeagle071.tistory.com/6
<유니티> 프로그래밍/ void Start, void Update
유니티 프로젝트에서 Create C# Script를 만들어서 들어가 보시면 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 using System.Collections; using System.Collections.Generic; using UnityEngine; public..
blueeagle071.tistory.com
바로 start 함수와 update 함수였죠 기본적으로 유니티에서 C#스크립트를 만들면 생성되는 함수였습니다.
이번에는 우리가 함수를 새로 만들어볼겁니다.
그런데 함수는 왜 쓰는것일까요? 일단 가벼운 게임 코드라면 모르겠지만 코딩을 하다 보면
줄이 길어지고 코드가 보기 힘들어짐으로 에러 버그가 많이 생깁니다. 함수 사용으로
코드를 정리해서 보고 좀 더 버그나 에러가 나지 않도록 하기 위함입니다.
참고로 함수는 함수(Function)으로도 불리고 메서드(method)라고도 불립니다
결국 두 뜻은 모두 같기 때문에 혼동이 없길 바랍니다.
1. void 함수
위 블로그에서 우리는 이미 void 함수의 정의에 대해 배웠습니다.
바로 리턴 값이 없는 행동을 취하는 함수라고요 void 함수 사용법은 이러합니다
void 함수이름()
{
실행할 내용
}
이렇게 선언을 해준 후
함수 이름(); 을 적어주시면 실행이 가능합니다. 그럼 간단한 예를 살펴봅시다
이렇게 코드를 적어봅시다. 그럼 Name 함수 안에 있는 명령들이 Start에서 실행될 겁니다
역시 void 안에 있던 명령어들이 잘 실행되었습니다.
여기서 주의하셔야 할 점이 있습니다. 기본적으로 함수 메서드를 선언할 때 이름에
공백 문자(띄어쓰기가) 있어서는 안 됩니다
이런 식으로 에러가 뜨죠 만약 띄어쓰기 같은 표현을 쓰고 싶다면 언더바 '_'를 쓰시는 것을 추천합니다
2. 반환 함수
앞의 void 함수는 값을 리턴하지 않는 실행하는 함수라고 배웠습니다 그럼 이제 값을 리턴할 수 있는 함수를
알아봅시다. 반환 함수는 어떤 값을 리턴해줄 수 있는 함수입니다. 예제를 살펴봅시다
수 값을 리턴 받을 것으로 void 말고 float로 써줍니다 이제 Name 소괄호 안에 보면 age라는
float라는 변수를 선언한 게 보이실 겁니다. 이는 외부에서 함수 내부로 전달할 값을 받는 변수라 보시면 되겠습니다
그리고 리턴할 값을 return 옆에 적어주시면 값이 리턴됩니다
하나씩 보자면
1. Name 함수 안에 있는 age 값을 99 라 지정합니다
2. age에 1을 더합니다
3. age를 리턴한 후 age를 출력합니다
실행 후 결과를 봅시다
99를 넣어서 1을 더해 출력하니 100이 되어 출력됩니다. 잘 실행되었죠
하지만 여기서 이상한게 보입니다 우리는 분명 이전 블로그에서 float 변수를 사용할때 f를 값 옆에 붙여준다 하였습니다
https://blueeagle071.tistory.com/7
<유니티,C#> 변수의 종류와 사용
1. 변수란 Variable 즉 변수는 '변할 수 있다는 수'라는 뜻으로 변수를 선언하고 그 안에 값을 담는 용도로 사용합니다 마치 바구니처럼 말이죠 그런데 이런 바구니가 모든 걸 담지는 못하죠 그래서
blueeagle071.tistory.com
하지만 위 코드에서는 붙여주지 않고 잘 실행이 되었죠 이는 float 타입이 정수 타입을 모두 포함하기때문에
(float 는 소수 정수 모두표현 int 정수표현) 자동으로 float 타입으로 바궈주기 때문입니다
그렇다고 f 를 붙인다고 에러가생기진 않습니다.
'프로그래밍' 카테고리의 다른 글
<유니티> 프로그래밍/ void Start, void Update (1) | 2023.08.03 |
---|---|
<유니티,C#> if 문 else, else if 조건문 + 연산자 (0) | 2023.08.02 |
<유니티,C#> 변수의 종류와 사용 (1) | 2023.08.02 |
<유니티,C#> 반복문 for,while (0) | 2023.08.01 |
<유니티> 플레이어 움직이기 (상하좌우) (0) | 2023.07.30 |