C# boxing unboxing

Featured image

Boxing : 값 형식을 Object 형식으로 변환하는 것을 얘기한다.

boxing

code1

result


Unboxing : Object형식에서 값 형식으로 변환하는 것을 얘기하고 과정은 두 가지 절차를 거친다.

  1. 개체 인스턴스가 지정한 값 형식을 Boxing한 값인지 확인

  2. 인스턴스의 값을 값 형식 변수에 복사

unboxing

MSDN에서 얘기 해주는 boxing과 unboxing에 성능에 대한 얘기

This can take up to 20 times longer than a simple reference assignment. 
When unboxing, the casting process can take four times as long as an assignment.
(박싱을 하면 단순히 참조에 할당하는 것보다 20배까지 시간이 소모되며, 언박싱은 할당에 4배정도 소모된다.)

저장되는 공간이 다르고 불필요한 형변환이 이루어져서 그런 것 같다.

Reference