패스트캠퍼스 챌린지 18일차
본문 바로가기
  • 게임 개발자가 되고싶은 구구
게임 개발 공부/패스트 캠퍼스 이벤트

패스트캠퍼스 챌린지 18일차

by gugu99 2021. 11. 18.
반응형

안녕하세요!

오늘도 게임개발자가 되기위해 공부하고 있는 구구입니다.

오늘은 갓생살기 18일차가 되는날입니다.

 

오늘도 어제에 이어 C#의 데이터에 대해 알아보도록 하겠습니다.

 

C#-데이터-Object

 

 

 

오늘은 객체 데이터 형태인 object에 대해 알아보도록 하겠습니다.

이 데이터의 특징은 어떤 데이터 형이든 모두 처리가 가능하다는 장점이 있습니다.

또한 나중에 배우게 될 클래스에 상속이 적용된다는 점이 있습니다.

 

 

 

 

 

C#-object-데이터

 

 

 

위에서

a는 int형

b는 float형(뒤에 f가 붙은걸 보니 유추할 수 있음)

c는 decimal형

d와 e는 char형

f는 string형

g는 bool형

이라는 것을 알 수 있습니다.

그런데 object의 경우 이러한 자료형들의 상위 자료형이기 때문에 모두 다 포함할 수 있고 출력시도

잘 나오게 됩니다.

 

 

C#-object-데이터

 

즉, 여기서 우리는 object의 데이터형은 어떠한 데이터형이든 다 받을 수 있다는 점과 저장된 내용을

출력하는것도 다른 데이터형들과 동일하다는 점을 알 수 있습니다.

 

 

그 다음은 enum형에 대해 알아보도록 하겠습니다.

열거형 데이터 형태이고 쓰는 형식은

enum 식별자(이름)

과 같은 형태로 사용합니다.

예를 들어보겠습니다.

 

enum DAY_OF_WEEK

{                           

SUN,

MON,

TUE,

WED,

THU,

FRI,

SAT

}                          

 

위 자료형은 코드를 짤때 가독성을 올려준다는 장점이 있습니다.

 

 

C#-enum-데이터-숫자자동분배

 

다음과 같이 코딩했을때 아래의 출력 시 (int)DAY_OF_WEEK.SUN 과 같이 int형으로 바꾸는 작업을 취했는데

이때 enum형을 쓸때는 자동으로 첫번째 데이터부터 0 부터 끝에있는 데이터까지 번호를 매기기 때문에

int형으로 바꿔서 출력시 숫자 0부터 차례대로 출력이 됩니다.

 

C#-enum-데이터-숫자자동분배

 

 

 

만약 이 enum 자료형이 게임개발에 쓰인다면 어떤 식으로 쓰이게될지 한번 예시를 들어보도록 하겠습니다.

 

 

C#-enum-데이터-자료형-게임개발-클릭-캐릭터상태

 

위처럼 캐릭터 상태가 있고 클릭시 바뀌게 되는 상태가 있어서 그에따른 숫자값도 매기는 등과 같이 enum 데이터형을

이용해서 표현할 수 있음을 알 수 있습니다.

 

 

 

 

마지막으로 nullable형식에 대해 알아보고 마무리하도록 하겠습니다.

기존 데이터형의 값 + null값 저장이 가능합니다.

즉, 기존의 데이터형의 값 뿐만아니라 null이라는 값도 저장이 가능하다는 뜻입니다.

그리고 HasValue, Value라는 예약어를 사용할 수 있습니다.

사용하는 방법은

데이터자료형? 식별자

의 형식입니다. ex)int? num = 100;

단순히 이렇게만 보면 이해하기 어렵기 때문에 코드를 보면서 더 이야기하도록 하겠습니다.

 

 

C#-nullable-?-데이터

 

위처럼 int? c = num; 도 가능하지만 int? c = null; 도 가능하고  만약 null을 넣었다면

c가 출력될때는 아무값도 표기되지 않을 것입니다.

또 HasValue라는 값을 통해서 값이 있는지 없는지 확인할 수 있습니다.

즉, 값이 있다면 True가 나오고 값이 없다면 False가 나오게 됩니다.

 

 

 

 

 

 

오늘은 여기까지 하도록 하겠습니다.

 

 

 

 

 

https://bit.ly/3FVdhDa 

본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다. 

반응형

댓글