C#2010. 6. 15. 14:39

#. 내용.
 - C#에서 포인터를 사용하면 불안전한 코드가 됩니다. C#은 CLR이 메모리를 자동으로 관리해 주는데 포인터는 사용자가 직접 메모리를 건들이기 때문에 불안전코드가 되는 것입니다. 이 상태에서 실행하면 컴파일 오류가 발생합니다. 이때 unsafe키워드를 사용하면 포인터를 사용할 수 있습니다.

#. 방법.
1. unsafe 키워드를 함수 앞에 명시.
 - 함수의 매게변수와 함수의 끝부분까지 포인터를 사용할 수 있습니다.
 ex)
   unsafe static void PointerMethod(int* x)
   {
          *x = 1000;
    }
2. unsafe 블록을 설정.
 - 블록 내에서 포인터를 사용할 수 있습니다.
 ex)
   public static void Start()
   {
       int x1 = 10;
       unsafe
       {
           PointerMethod(&x1);
       }
       MessageBox.Show(x1.ToString());
  }

Posted by 쿵캉켕