다음을 통해 공유


사용하지 않는 Using 제거

업데이트: 2007년 11월

Visual Studio 사용자 인터페이스의 사용하지 않는 Using 제거 옵션을 사용하여 using 지시문, using 별칭 및 소스 코드에 사용되지 않는 extern 별칭을 제거합니다. 작업을 호출하는 두 가지 방법이 있습니다.

  • 주 메뉴 - 편집 메뉴에서 IntelliSense, Using 구성을 차례로 가리킨 다음 사용하지 않는 Using 제거를 클릭합니다.

  • 상황에 맞는 메뉴 - 코드 편집기의 내부를 오른쪽 마우스 클릭하고 Using구성을 가리킨 다음 사용하지 않는 Using 제거를 클릭합니다.

    참고:

    빌드하지 않은 소스 코드에서 사용하지 않는 Using 제거를 실행할 경우 필요한 using 지시문이 일부 제거될 수 있습니다.

다음 예제에서는 소스 코드에서 수행 중인 사용하지 않는 Using 제거의 결과를 보여 줍니다.

using System;
using System.Linq;
using System.Collections.Generic;
using System.Text;
using System;
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("test");
        }
    }
}
using System;
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("test");
        }
    }
}

위 예제에서 System만 나중에 소스 코드에 사용됩니다. 중복되는 System 사용 지시문을 비롯하여 다른 using 지시문은 제거됩니다.

설명

조건부 전처리기 지시문

사용하지 않는 Using 제거는 활성 블록에 있는 사용되지 않은 지시문과 별칭만 제거합니다. 다음 예제는 이 동작을 보여 줍니다.

#define DEBUG

#if DEBUG

using System;

using System.Collections.Generic;

using System.Linq;

#else

using System.Text;

#endif

namespace ConsoleApplication1

{

class Program

{

static void Main(string[] args)

{

List<int> myList = new List<int> { 1, 2, 3 };

Console.WriteLine(myList);

}

}

}

#define DEBUG

#if DEBUG

using System;

using System.Collections.Generic;

#else

using System.Text;

#endif

namespace ConsoleApplication1

{

class Program

{

static void Main(string[] args)

{

List<int> myList = new List<int> { 1, 2, 3 };

Console.WriteLine(myList);

}

}

}

위의 예제에서는 System.Text 및 System.Linq가 사용되지 않습니다. 그러나 System.Text가 활성 블록에 있지 않기 때문에 System.Linq는 제거됩니다.

주석

사용하지 않는 Using 제거는 주석이 삭제될 지시문의 토큰 또는 별칭 사이에 있는 경우에만 주석을 제거합니다. 앞이나 뒤에 오는 주석은 영향을 받지 않습니다. 다음 예제는 이 동작을 보여 줍니다.

using System;

/* Comment before remains */

using /* Comment between removed */ System.Linq;

// Comment after remains

namespace ConsoleApplication1

{

class Program

{

static void Main(string[] args)

{

Console.WriteLine("My Example");

}

}

}

using System;

/* Comment before remains */

// Comment after remains

namespace ConsoleApplication1

{

class Program

{

static void Main(string[] args)

{

Console.WriteLine("My Example");

}

}

}

위의 예제에서 System.Linq는 제거됩니다. 지시문의 토큰 사이에 있는 주석만 제거됩니다.

참고 항목

개념

Using 문 구성

Using 정렬

참조

옵션 대화 상자, 텍스트 편집기, C#, 고급

using 지시문(C# 참조)

extern alias(C# 참조)