я знаю, что это может звучать тривиально для всех вас, что я пытаюсь сделать здесь, это отформатировать макет.
X Y Z Dist. Fr Origin
- - - - - - - - - - - - - - - - - - -
[ -9, -9, -9] 15.589
[ -99, -99, -99] 171.473
[-999, -999, -999] 1730.320
[ 3, 3, 3] 5.196
[ 23, 23, 23] 39.837
[ 123, 123, 123] 213.042
Это то, что я хотел бы показать.
Я использую оператор ostream, который выглядит примерно так
ostream& operator<< (ostream& os, const Point& d)
{
os << "["<< d.x
<< ", "<< d.y
<< "]"<< d.distances;
return os;
}
Я попытался использовать setw, setprecision (3) для десятичного знака, но это не работает.
Point.cpp: In function ‘std::ostream& operator<<(std::ostream&, const Point&)’:
Point.cpp:9: error: ‘setw’ was not declared in this
Я надеюсь, что кто-то может мне помочь. Благодарю.
Если вы видите, например, эта ссылка Вы видите, что вам нужно включить <iomanip>
заголовочный файл
Кроме того, если вы не делаете using namespace std;
в вашем коде (что я рекомендую вам не делать), то вам нужно префикс его с std::
лайк std::setw
,
Других решений пока нет …