我尝试创建一个返回char和数字串联的ostream函数。我希望数字是精确的2:让我们说“20.1234”所以我要打印:“20.12”,或者如果数字是“10”则打印“10.00”。 这是我的功能:
std::ostream& operator<< (std::ostream& out,
const Assig& assignment)
{
for (int i=rows-1; i>=0; i--)
{
out<<char(assig.arr[i][1])<<" = "<<setprecision(2)<<assig.arr[i][0];
out<<", ";
}
return out;
}
但它打印“a = 10”而不是“a = 10.00”。 也许我需要使用ostringstream?但是我无法更改函数的名称:“std :: ostream&amp; operator&lt;&lt;(std :: ostream&amp; out,const Assignment&amp; assignment)”