hello world

Programming +41

c# -2

Programming2016. 2. 9. 20:32

c# -> 기본 데이터 형식(+상수, 열거형, ..) ; 복합 데이터 형식(구조체, 클래스, 배열, ..) ; 값 형식/참조 형식


값 형식 ; 스택

참조 형식 ; 스택, 힙 (메모리 주소 ..)


스택 -> 블록이 끝나면 사라짐 (변수의 생명 주기가 다할 경우!)

힙 -> 더이상 참조하는 곳이 없을 때 가비지 컬렉터가 데이터를 치워주는 구조


기본 데이터 형식 -> 숫자(값)/논리(값)/문자열(참조형)/오브젝트(참조형)


숫자 -> 정수, 부동 소수, 소수 ...


정수 -> byte, sbyte, short, ushort, int, uint, long, ulong, char

부동 소수점 -> double, float(ex. float b=3.14159265358979f;)

decimal -> 실수를 다룸.. 부동소수점과 다른 방식으로 소수를 다루며, 정밀도가 훨씬 높음. 29자리 데이터를 표현할 수 있는 소수 형식.(ex. decimal d=3.14159265358979m;)


문자 -> char('   ')

문자열 -> string("  ")


논리 -> bool(true/false)


object -> 모든 데이터 형식(기본 데이터 형식 + 복합 데이터 형식, ... 프로그래머가 만드는 데이터 형식,..)을 다룰 수 있음. 즉, 모든 데이터 형식의 조상. 어떠한 형식의 데이터라도 object에 담아서 처리 가능. 참조형식이기 때문에 힙에 데이터를 할당. (int, double 등의 형식은 값 형식 >> 스택에 데이터 할당) 값 형식의 데이터를 힙에 할당하기 위한 boxing 기능 제공.. 힙에 있던 값 형식 데이터를 형식객체에 다시 할당하는 것은 un-boxing


상속 ; 부모 데이터 형식의 유산을 자식이 물려 받는 것. 부모로부터 데이터, 메소드를 물려받아 부모와 똑같이 동작 가능


상수와 열거형 -> 변수와는 다르게 안에 담긴 데이터를 절대 바꿀 수 없는 메모리 공간

상수 -> const

열거형 -> 종류는 같지만, 다른 값을 갖는 상수를 선언해야 할 경우 사용.

(ex. enum 열거형식명 : 기반 자료형{상수1, 상수2, 상수3, ...}

enum list_Test{Yes, No, Cancel, Ok} -> 0, 1, 2, 3 -> list_Test.Yes, ...)


Nullable -> 비어있는 상태가 될 수 있는 형식..(ex. 데이터 형식? 변수 이름; >> int? a=null;)

* int a=null 과 같은 경우 불가능...


var -> 선언과 동시에 초기화 필요.. 컴파일러가 자동으로 해당 변수의 형식을 지정해줌. 지역변수로만 사용 가능


(* c# ; 전역변수 존재 x.....)

'Programming' 카테고리의 다른 글

overloading with overriding  (0) 2016.02.29
c# -3  (0) 2016.02.28
c#  (0) 2016.02.09
CGI  (0) 2015.08.24
Program Bug  (0) 2015.08.21