extra_positional_arguments

extra_positional_arguments

함수나 메서드를 호출할 때 위치 인자(positional argument)를 너무 많이 넘기면 이 진단이 발생해요. 선언된 매개변수 수보다 많은 인자를 전달하면 안 되거든요.

출처: extra_positional_arguments

본문

설명

analyzer는 메서드나 함수 호출에, 해당 메서드나 함수가 허용하는 위치 인자보다 더 많은 위치 인자가 있을 때 이 진단을 내보내요.

예시

아래 코드는 f가 매개변수 2개를 정의했는데 3개의 인자로 호출돼서 이 진단이 발생해요.

void f(int a, int b) {}
void g() {
  f(1, 2, 3);
}

흔한 해결 방법

매개변수에 해당하지 않는 인자를 제거하면 돼요.

void f(int a, int b) {}
void g() {
  f(1, 2);
}

더 알아보기

  • 위치 인자는 매개변수가 선언된 순서대로 전달돼요. 호출할 때는 함수가 받는 매개변수 수와 개수를 맞춰 주세요.