我这样做时有一个奇怪的错误(在std :: cout cout<<(-D);其中ostream & operator<<( ostream &c, BigReal &n ){ c << n.nume << "=" << "[" << n.nr << "] "; return c;}一元-如:BigReal BigReal::operator-( void ){ float negativ = atof( nr ); char buff[ 1000 ]; sprintf( buff, "%f", -negativ ); //strcpy( nr, buff ); BigReal Rez(buff, "Nr."); return Rez;}D是一个BigReal。 (adsbygoogle = window.adsbygoogle || []).push({}); 最佳答案 表达式-D创建一个临时对象。临时对象可以绑定到const引用。所以按以下方式更改运算符ostream & operator<<( ostream &c, const BigReal &n ); (adsbygoogle = window.adsbygoogle || []).push({});
08-17 02:53