티스토리 뷰

C#

9. 구조체(Structures)

LDobac 2016. 6. 30. 00:04

 

이번에는 구조체에 대하여 알아 보겠습니다.

보통 C++에서의 구조체는 class 와의 별반 차이 없는 차이라고 해봤자 기본 접근 지시자가 private이냐 public이라는 차이점 밖에 없습니다.

C#또한 그렇…지 않습니다! C#에서는 구조체 또한 기본 접근 지시자가 private로 되어 있습니다.

(지못미)

 

그러면 C#에서는 구조체와 클래스의 차이점은 무엇 일까요?

클래스와 구조체의 차이점은

클래스는 힙 (Heap)영역 에서 참조(Reference) 타입 이고,

구조체는 스택(Stack)영역에 생성되는 값(Value) 타입 입니다.

따라서 구조체가 클래스보다 메모리 소모가 덜 하다고 합니다.

두번째로 매개변수가 없는(..!!) 생성자와 소멸자를 선언 할 수 없습니다.

게다가 상속을 지원하지도 않습니다(.!!!!!) 그리고 디폴트 생성자 또한 지원 하지 않습니다.

하지만 구조체는 값 타입이므로 구지 new 연산을 하여 객체를 생성할 필요 없이 선언 만으로 인스턴스화가 가능하고 서로 대입이 가능합니다.

 

구조체 끝

'C#' 카테고리의 다른 글

유니티에서 아두이노와 시리얼 통신하기  (1) 2017.09.24
string 타입에서 ""과 null은 같을까?  (2) 2017.06.27
8. 확장 메소드(Extension Method)  (0) 2016.06.29
7. get set  (1) 2016.05.07
6. sealed  (0) 2016.05.07
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2025/04   »
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
글 보관함