4
숫자가 오른쪽 정렬되도록 boost::format
을 사용하는 int의 고유 벡터를 사용하고 싶습니다. 지금까지 나는 다음과 같은 코드부스트 형식으로 int의 Eigen-vectors 형식을 사용했습니다.
int main(){
vector<Vector3i> foo; Vector3i bar;
bar << -1,-1,0; foo.push_back(bar);
bar << 0, 0,0; foo.push_back(bar);
boost::format header("%3d");
for (int i = 0; i < 2; ++i)
cout << header % foo[i].transpose() << endl;
return 0;
}
을 가지고 있고 출력은
-1 -1 0
0 0 0
이다 그러나 나는 다음과 같은 출력을
-1 -1 0
0 0 0
을 희망하고있어 내가 원하는 결과 나는 경우를 달성 할 수 for
내부의 형식 및 코드를 다음과 같이 수정했습니다.
boost::format header2("%2d %2d %2d");
for (int i = 0; i < 2; ++i)
cout << header2 % foo[i](0) % foo[i](1) % foo[i](2) << endl;
boost::format
을 사용하여 더 효율적인 방법이 있는지 누군가가 알 수 있습니까?
제안을 주셔서 감사하지만 내가 원하지 않기 때문에 무엇을 찾고 있어요 정말 아니다 그 "+"표시가 있어야합니다. 이것을 공간으로 바꾸는 방법이 있습니까? 나는 ('% + 3d ')'을''% 3d "' '로 변경하려했지만 효과가 없었습니다. 그리고'IOFormat'도 실제로 도움이되지 않습니다. – rnels12