2016-09-22 5 views
0

이 코드에서 오류가 발생하며이를 수정하는 방법을 알 수 없습니다.매개 변수가있는 생성자가있는 기본 클래스에서의 상속

CS7036 There is no argument given that corresponds to the required formal parameter 'numPlayers' of 'Football.Football(string, string, string, string, string, int, int, int)' Track

내가 기본 클래스로 오전 매개 변수를 사용하여 생성자를 전달하고있다 :

public Track(string sKind, string tName, string loc, 
         string cName, string aSeason, 
         int numPlayed, int numWins, int numPlayers) 
     : base(sKind, tName, loc, cName, aSeason, numPlayed, numWins) 
    { 
     numOfPlayers = numPlayers; 
    } 

는 오류입니다.

+2

'base()'는 8 개의 매개 변수를 가지고 있으며, 단지 7을 통과하고 있습니다. – Sinatr

+0

': base (...', 또는'Track()'을 인스턴스화하는 행에 오류가 있습니까? –

+1

코드를 리팩토링하여 생성자 인수의 수를 줄이는 것이 좋습니다. 모범 사례는 3보다 많지 않습니다. –

답변

1

그냥 기본 생성자에 전화로 numPlayers을 추가

: base(sKind, tName, loc, cName, aSeason, numPlayed, numWins, numPlayers) 

(베이스 생성자는 8 개 매개 변수 (5 문자열/3 int)를 필요로합니다,하지만 당신은 통과된다 7 (5 문자열/2 int)).

+0

고맙습니다! – LindaS

관련 문제