본문 바로가기
개발언어/C#

[C#] using문 이해 및 사용방법

by 창용이랑 2021. 10. 18.
728x90

C# 문법 중 using문이 어떠한 것인지 알아보고, 또 언제 어디서 어떻게 사용하는지 알아 보도록 하겠습니다.

 

C#에서 using문의 사용 용도는 크게 2가지 입니다. 첫 번째

로는 지시문, 두 번째로는 문장을 표현할 때 사용합니다.

 

우선 첫 번째로 지시문으로 사용되는 예제입니다.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

위에서 보이는 것과 같이, 네임스페이스에 정의된 각 타입을 가져올때(참조할 때) 사용합니다.

 

 

 

 

두 번재로는 문장 형태 using문 입니다.

MSDN을 인용하여 using문을 설명 드리자면 IDisposable 객체의 올바른 사용을 보장하는 편리한 구문을 제공해 주는 것이 바로 using문 입니다.

 

무슨말이냐 하면,

 

File및 Font와 같은 클래스들은 관리되지 않는 리소스에 액세스 하는 대표적인 클래스들입니다. 이 말은 해당 클래스들을 다 사용한 후에는 적절한 시기에 해제(Dispose)하여 해당 리소스(자원)을 다시 반납해야 하는 것입니다.

 

하지만..

 

프로그래머가 프로젝트를 하면서 매번 관리되지 않는 리소스에 액세스 하는 클래스들을 체크하여 Dispose 하는 것을 많은 시간과 실수를 야기합니다..이때 바로 using문을 이용하면 해당 리소스 범위를 벗어나게 되면 자동으로 리소스(자원)을 해제(Dispose)하여 관리를 쉽게 도와 줍니다.

 

그럼 Font 클래스를 이용하여 using문을 사용하였을 때와, 사용하지 않을 경우의 두가지 예제코드를 보여드리겠습니다.

 

Using문 사용한경우
using (Font font1 = new Font("Arial", 10.0f)) 
{
    byte charset = font1.GdiCharSet;
}

 

Using문 사용하지 않은 경우
{
  Font font1 = new Font("Arial", 10.0f);

  try
  {
    byte charset = font1.GdiCharSet;
  }

  finally
  {
    if (font1 != null)
      ((IDisposable)font1).Dispose();
  }
}

이렇듯 using문을 사용하면 프로그래머가 일일이 Dispose를 해주지 않아도 되고 로직도 간단해지는 것을 확인 하실 수 있습니다.

 

이로써 using문 사용 방법에 대해 알아보았습니다.

 

감사합니다.ㅎㅎ



출처: https://afsdzvcx123.tistory.com/entry/C-문법-using문-이해-및-사용-방법 [BeomBeomJoJo - Programmer]