| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 |
- 습관형성 #직장인자기계발 #오공완
- 디지털트윈
- sparkmain(clone) 무한생성
- 최단거리 알고리즘
- readonly
- 트리구조
- Unity
- dfs
- 오블완
- unity sparkmain(clone)
- 깊이탐색
- 너비탐색
- C#
- navisworks api
- unity korea
- 드롭다운
- 행동트리
- sparkmain(clone)
- 유니티 sparkmain(clone)
- 최소신장트리 mst
- articulation body
- 티스토리챌린지
- raycast
- list clear
- 크루스칼
- GetComponent
- dropdown
- 유니티
- removeAll
- Simulation
- Today
- Total
낑깡의 게임 프로그래밍 도전기
C# 데이터 형식, Value Type, Reference Type 본문
데이터 형식
1. 데이터 형식
string은 배열이다. 그래서 foreach도 가능하다.
int 4byt
lone 8byt
float 4byt
duble 8byt
*float는 정밀도가 낮다, 정밀도를 요한다면 duble(특히 확률), 길어질 것 같으면 long 형식을 쓴다. 처음에 int를 쓰다가 long을 바꾸기 쉽지 않아서 잘 선택해야한다.
*서버로 데이터를 보낼 때 duble로도 잘 안씀. 가공할 때 문제가 될 수있기 때문.
*소수점을 계산을 없애기위해 만약 100.34가 나왔다면 100을 곱해서 사용하자 약속하기도함
2. 열거형식
string은 오타 등으로 인해 에러 발생 가능성이 높다.
그래서 실무에서는 enum을 많이 쓰고 숫자(인덱스)를 직접 정해준다.
enum은 시스템 어디에든 쓸 수 있다. 그래서 따로 빼서 관리하기도 한다.
*클린코드를 한 땐 한번된 공간에서만 쓸 수 있게 클래스 안에 선언하기도 함.
3. 형변환
int money = 1000;
string letter = "안녕, 나야";
double dlubleMoney = 20.0;
float floatMoney = 10.0f;
float를 duble로
doubleMoney = floatMoney;
* 데이터 범위가 double이 더 커서 자동형변환 된다.
double을 float로
floatMoney = (float)doublieMoney; 강제 현변환
int를 string으로
letter = money.ToString();
letter = money + ""; 빈 문자열을 붙이면 자동형변환이 된다. letter가 더 크다고 인식되어서 가능.
string을 int로
money = int.Parse(letter); 이미 문자를 초기화 해놨다면 에러가 발생할 수 있음
int.TryParse(letter, out money); 바꿀 수 없다면 int의 초기값(0)이 들어가게 된다. 좀 더 안전.
Value Type, Reference Type
값타입은 primitive 타입이라고도 부른다.
가비지 컬렉션을 수동으로 날릴 수 있다. 그래서 모아두었다가 씬전환 시점에서 날리기도 한다.
string letter = "안녕"; reference 타입이지만 겉은로는 값타입 처럼 보임
'C#' 카테고리의 다른 글
| C# 데이터 표현 (0) | 2025.07.07 |
|---|---|
| C# Call by value, Call by reference (4) | 2025.07.07 |
| C# 비주얼 스튜디오(visual studio) 파일 찾기 및 단축키 (0) | 2025.07.07 |
| 4. Navisworks API Dock Pane DockPanePlugin (0) | 2024.04.09 |
| 3. Navisworks API 커스텀 리본 (0) | 2024.04.09 |