분류 전체보기57 [C#] Nullable 형식 Nullable 형식 - Null (비어있는) + able (~ 될 수 있는), 즉 "비어 있는 상태가 될 수 있는" 형식이라는 뜻을 나타낸다. 우리가 프로그래밍을 하다 보면 어 떤 값도 가지지 않는 변수가 필요할 때가 있는데 0이 아닌 비어 있는 변수에게 할당된 메모리 공간을 비워 둘 수 있도록 Nullable형식을 사용하면 된다. 변수 선언 방법 데이터 형식? 변수 이름; 값 형식? 참조 형식? Nullable 형식을 사용할 수 있는 경우는 값 형식에 한해서만 된다. 참조 형식은 사용불가! int? a = null; float? b = null; double? c = null; 위에서 선언한 변수는 모두 null로 초기화됐는데, 뜻은 "해당 변수를 비운다"라는 뜻이다. 그렇다면 아무 값도 넣지 않으면.. 2019. 4. 28. [C#] 박싱과 언박싱 박싱(Boxing) - 값 형식을 참조 형식으로 변환하는 것을 말하며 스택에 있는 데이터가 힙으로 복사 언박싱(Unboxing) - 참조 형식을 값 형식으로 변환하는 것을 말하며 힙에 있는 데이터가 스택에 복사 값 형식의 자료는 스택 메모리 영역에, 참조 형식의 자료는 힙 메모리 영역에 할당이 된다. object 형식은 참조 형식 이기 때문에 힙에 데이터를 할당. int와 double 은 값 형식이기 때문에 스택에 데이터를 할당하지만 값 형식의 데이터 형식도 object 형식 객체에 담을 수 있다. 이처럼 object 형식에 값 형식 데이터를 할당하려고 하면 object 형식은 자동으로 박싱을 수행해서 데이터를 힙에 할당한다. 박싱 언박싱 a는 20이 박싱 되어 저장되어 있는 힙을 참조하고 있다. b는 .. 2019. 4. 28. [C#] object 형식 object 형식 - 어떤 데이터 이든지 다룰 수 있는 데이터 형식 그렇다면, 왜 object 형식이 모든 데이터 형식의 데이터도 담을 수 있을까. 바로 상속의 효과 때문이다. 상속은 부모 데이터 형식을 자식 데이터가 물려받는 것을 의미한다. 부모로부터 데이터와 메서드를 물려받은 자식은 부모와 똑같이 동작할 수 있다. 그래서 C#의 모든 자료형 object가 모든 데이터를 다룰 수 있도록 하기 위해서 System.object를 상속을 받게 한 것이다. object 형식 예제 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 using System; using static System.Console; namespace Object { class Program { s.. 2019. 4. 28. 이전 1 ··· 7 8 9 10 다음