[C#] new 연산자, boxing
2022. 2. 12. 16:00ㆍC#/자료구조
new 연산자란?
클래스로부터 인스턴스 객체를 생성한다.
생성자를 호출한다.
new로 만든 인스턴스는 힙 메모리에 할당된다.
-> 가비지 콜렉터가 관리하는 영역
인스턴스를 아무도 참조하고 있지 않을 때는 GC가 수거해간다.
박싱과 언박싱
박싱은 힙에 값 형식을 저장하는 데 사용된다.
값 형식을 박싱하면 힙에 개체 인스턴스가 할당되고
값이 새 개체에 복사된다.
언박싱은 개체 인스턴스의 값을 값 형식 변수에 복사하는 데 사용된다.
언박싱의 연산 과정은
- 개체 인스턴스가 지정한 값 형식을 박싱한 값인지 확인한다.
- 인스턴스의 값을 값 형식 변수에 복사한다.
https://docs.microsoft.com/ko-kr/dotnet/csharp/programming-guide/types/boxing-and-unboxing
Boxing 및 Unboxing - C# 프로그래밍 가이드
C# 프로그래밍의 boxing 및 unboxing에 대해 알아봅니다. 코드 예제를 살펴보고 사용 가능한 추가 리소스를 확인합니다.
docs.microsoft.com
https://velog.io/@cgotjh/C-%EB%B0%95%EC%8B%B1Boxing%EA%B3%BC-%EC%96%B8%EB%B0%95%EC%8B%B1Unboxing
C# 박싱(Boxing)과 언박싱(Unboxing)
박싱(Boxing)과 언박싱(Unboxing)
velog.io
박싱 / 언박싱의 장점과 단점을 정리한 글.
'C# > 자료구조' 카테고리의 다른 글
[C# 자료구조] 동적 배열 구현 방식과 시간 복잡도 (0) | 2022.08.02 |
---|---|
[C#] 자료구조 - 배열과 동적배열 (Dynamic Array) (0) | 2022.05.27 |