main_has_too_many_required_positional_parameters 진단: main 함수의 필수 위치 매개변수 개수
main_has_too_many_required_positional_parameters 진단: main 함수의 필수 위치 매개변수 개수
main이라는 이름의 함수에 필수 위치(positional) 매개변수가 두 개를 초과해 있을 때 Dart 분석기가 알려주는 진단이에요. 진입점(entry point)으로 쓰이는 main은 필수 위치 매개변수를 최대 두 개까지만 가질 수 있어요.
본문
설명
분석기는 main이라는 이름을 가진 함수에 필수 위치 매개변수가 두 개보다 많을 때 이 진단을 만들어요.
예시
다음 코드는 main 함수에 필수 위치 매개변수가 세 개 있기 때문에 이 진단이 나와요.
void main(List<String> args, int x, int y) {}
흔한 해결 방법
그 함수가 진입점이고 추가 매개변수를 사용하지 않는다면, 그 매개변수들을 제거해요.
void main(List<String> args, int x) {}
그 함수가 진입점인데 추가 매개변수들이 진입점으로 쓰이지 않을 때를 위해 있는 거라면, 추가 매개변수를 선택(optional) 매개변수로 만들어요.
void main(List<String> args, int x, [int y = 0]) {}
그 함수가 진입점이 아니라면, 함수의 이름을 바꿔요.
void f(List<String> args, int x, int y) {}