Creative Commons License

Microsoft .NET

닷넷!시작하기
닷넷! Ver 2.0~
닷넷!스킬업
웹개발
윈폼개발
실용모듈개발
Tip & Tech
하루 한 문법

Microsoft .NET 개발자들을 위한 공간입니다. 기초강의에서 부터 고급 기술 정보 및 팁등을 다루도록 하겠습니다.

.

Tip & Tech

개발 중 해결한 혹은 미리 알고 있으면 좋은 팁성 글을 공유하는 공간입니다

[C#] Is ValueType?

작성자 : 박종명
최초 작성일 : 2008-05-30 (금요일)
최종 수정일 : 2008-05-30 (금요일)
조회 수 : 2771

닷넷에서는 ValueType 과 ReferenceType 이 있다.
값타입과 참조타입이라 하는데 중요한 차이는 데이터가 메모리에 관리되는 방법이다.
 
일단 두 가지 개념적인 것은 담에 알아보기로 하고 간혹 이런 질문을 할 때가 있다
 
- 정수는 ValueType 이다. 그러면 정수형 배열은 ValueType 인가?
- string 은 ValueType 인가?
- 정수는 값 타입인데  System.Int 로 생성한 정수는 ValueType 인가?
 
데모로 답을 보자 
 






또는 리플렉션 관련 클래스(Type Class) 로도 확인 가능하다.

static void Main(string[] args)

{

         int i = 1;

         Type type1 = i.GetType();

         bool isValue1 = type1.IsValueType;

         Console.WriteLine(isValue1.ToString());

 

         int[] arr = new int[]{1,2};

         Type type2 = arr.GetType();

         bool isValue2 = type2.IsValueType;

         Console.WriteLine(isValue2.ToString());

 

         string s =  "하하";

         Type type3 = arr.GetType();

         bool isValue3 = type3.IsValueType;

         Console.WriteLine(isValue3.ToString());

}



이름
비밀번호
홈페이지
CH <- 왼쪽의 문자를 오른쪽 박스에 똑같이 입력해 주세요