[Effective C#] 박싱과 언박싱을 최소화하라.NET Framework에서는 모든 타입의 최상위 타입을 참조타입인 System.Object로 정의하고 있다.object는 참조형식이 때문에 힙에 데이터를 할당한다.반면, int나 double은 값 형식이기 때문에 스택에 데이터를 할당하며, 다형적이지 못하다.이 두가지는 양립하는 것 처럼 보이지만 앞서 모든 타입의 최상위 타입은 참조형식인 System.Object를 상속받는다고 했다. 어떻게 그럴 수 있을까?.NET Framework에서는 박싱(Boxing)과 언박싱(Unboxing)이라는 방법을 통해 이 두가지 서로 다른 타입을 이어준다.int firstParam = 5; int secondParam = 10; int thirdParam = 15; ..