다음을 통해 공유


리팩터링 매개 변수 제거(C#)

Remove Parameters는 메서드, 인덱스 또는 대리자의 매개 변수를 제거하는 간편한 방법을 제공하는 리팩터링 작업입니다. 매개 변수 제거가 선언을 변경하면 멤버가 호출되는 모든 곳에서 매개 변수는 새 선언을 반영하도록 제거됩니다.

우선 커서를 메서드, 인덱서 또는 대리자에 놓고 매개 변수 제거 작업을 수행합니다. 커서가 해당 위치에 있을 때 Parameters 제거 작업을 호출하려면 리팩터링 메뉴를 클릭하고 바로 가기 키를 누르거나 바로 가기 메뉴에서 명령을 선택합니다.

참고

확장 메서드에서 첫 번째 매개 변수를 제거할 수 없습니다.

매개 변수를 제거하려면

  1. RemoveParameters이라는 콘솔 응용 프로그램을 만들고 Program을 다음 코드로 바꿉니다.

    class A
    {
        // Invoke on 'A'.
        public A(string s, int i) { }
    }
    
    class B
    {
        void C()
        {
            // Invoke on 'A'.
            A a = new A("a", 2);
        }
    }
    
  2. 커서를 메서드 선언이나 메서드 호출에 있는 A 메서드에 놓습니다.

  3. 리팩터링 메뉴에서 매개 변수 제거를 선택하여 매개 변수 제거 대화 상자를 표시합니다.

    바로 가기 키 Ctrl+R, V를 입력해도 매개 변수 제거 대화 상자가 표시됩니다.

    커서를 마우스 오른쪽 단추로 클릭하고 리팩터링을 가리킨 다음 매개 변수 제거를 클릭하여 매개 변수 제거 대화 상자를 표시할 수도 있습니다.

  4. 매개 변수 필드를 사용하여 커서를 int i에 놓고 제거를 클릭합니다.

  5. 확인을 클릭합니다.

  6. 변경 내용 미리 보기 — 매개 변수 제거 대화 상자에서 적용을 클릭합니다.

설명

메서드 선언이나 메서드 호출에서 매개 변수를 제거할 수 있습니다. 커서를 메서드 선언이나 대리자 이름에 놓고 매개 변수 제거를 호출합니다.

경고

매개 변수 제거를 사용하여 멤버 본문 내에서 참조되는 매개 변수를 제거할 수 있으나, 메서드 본문에서 해당 매개 변수에 대한 참조는 제거되지 않습니다. 그 결과 코드에서 빌드 오류가 발생할 수 있습니다. 그러나 리팩터링 작업을 실행하기 전에 변경 내용 미리 보기 대화 상자를 사용하여 코드를 검토할 수 있습니다.

제거될 매개 변수가 메서드 호출 중에 수정되면 매개 변수를 제거할 때 수정 내용도 제거됩니다. 예를 들어, 메서드 호출이 리팩터링 작업에 의해

MyMethod(param1++, param2);

를 다음으로 변경:

MyMethod(param2);

로 변경되면 param1은 증가되지 않습니다.

참고 항목

개념

리팩터링(C#)