【问题标题】:C++ Default Argument ErrorC++ 默认参数错误
【发布时间】:2012-05-06 14:31:42
【问题描述】:

知道为什么在编译时会出现这个错误吗?

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;

【问题讨论】:

  • 只是出于好奇:使用operator<< 不是更直接吗?

标签: c++ default-arguments


【解决方案1】:

您应该只在函数声明中指定默认参数,即在标题中。你的实现应该是这样的:

void ComplexNumber::print(ostream & out) const { ..... }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-09-04
    • 2010-12-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-28
    • 2012-05-04
    • 1970-01-01
    相关资源
    最近更新 更多