Я знаю, что это может показаться вам тривиальным, то, что я пытаюсь сделать, это отформатировать макет.Проблемы с форматированием вывода C++
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
Я надеюсь, что кто-то может мне помочь. Благодарю.
Просьба показать строку 9 в Point.cpp. Я предполагаю, что вам не хватает std :: перед setw. – dutt
Пожалуйста, не показывайте нам код, который работает. Покажите нам короткую, полную программу, которая терпит неудачу. См. Http://SSCCE.ORG для получения дополнительной информации. –
Проверьте правильные манипуляторы: http://en.cppreference.com/w/cpp/io/manip –