Computer >> 컴퓨터 >  >> 프로그램 작성 >> C#

C#에서 복싱이란 무엇입니까?

<시간/>

Boxing은 값 유형을 개체 유형으로 변환합니다. 권투의 예를 살펴보겠습니다 -

int x = 50;
object ob = x; // boxing

boxing에서는 스택에 저장된 값이 힙 메모리에 저장된 객체에 복사되지만 unboxing은 반대입니다.

boxing은 가비지 수집 힙에 값 유형을 저장하는 데 유용합니다. 값 유형을 유형 개체로 암시적으로 변환하는 것입니다.

예를 들어 보겠습니다 -

예시

using System;
using System.Collections.Generic;
using System.Linq;

public class Demo {

   static void Main() {
      int x = 50;
      object ob = x;

      x = 100;

      // The change in x won't affect the value of ob
      System.Console.WriteLine("Value Type = {0}", x);
      System.Console.WriteLine("Oject Type = {0}",ob);
   }
}

그러나 Unboxing에서는 힙 메모리에 저장된 객체의 값이 스택에 저장된 값 유형으로 복사됩니다. 권투에는 암시적 변환이 있는 반면 명시적 변환이 있습니다.