2012-04-25 66 views
7

Bất kỳ ý tưởng nào tại sao lỗi này xuất hiện vào thời gian biên dịch?C++ Lỗi đối số mặc định

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’ 

Đây là mã của tôi tại những khu vực nhất định:

ComplexNumber.cpp

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

ComplexNumber.h

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

hết sức tò mò: sẽ không dễ sử dụng toán tử << 'nữa không? – stefan

+0

toán tử << gọi print() của tôi –

Trả lời

18

Bạn chỉ nên chỉ định tham số mặc định trong chức năng khai báo, tức là trong tiêu đề. Bạn triển khai phải có dạng như sau:

void ComplexNumber::print(ostream & out) const { ..... } 
Các vấn đề liên quan