8

コンパイル時にこのエラーが発生する理由は何ですか?

ComplexNumber.cpp:21: error: default argument given for parameter 1 of ‘void ComplexNumber::print(std::ostream&) const’
ComplexNumber.h:17: error: after previous specification in ‘void ComplexNumber::print(std::ostream&) const’

これらの特定の領域での私のコードは次のとおりです。

ComplexNumber.cpp

21    void ComplexNumber::print(ostream & out = cout) const {

ComplexNumber.h

17    void print(ostream & out = cout) const;
4

1 に答える 1

21

関数宣言、つまりヘッダーでは、デフォルト パラメータのみを指定する必要があります。実装は次のようになります。

void ComplexNumber::print(ostream & out) const { ..... }
于 2012-04-25T20:53:13.050 に答える