5

boost::formatブール値をシンボリック値として出力するにはどうすればよいですか?

これはなしで行うことができますboost::io::groupか?ストリームに事前に送信されたフラグは再テストされるようです。

#include <iomanip>
#include <iostream>
#include <boost/format.hpp>

int main()
{
  std::cout
    << std::boolalpha
    << true << " "
    << boost::format("%1% %2%\n")
         % true
         % boost::io::group(std::boolalpha, true)
    ;
}

出力

true 1 true
4

2 に答える 2

2

次のようにアーカイブできます。

#include <iomanip>
#include <iostream>
#include <boost/format.hpp>

int main()
{
  std::cout
    << std::boolalpha
    << true << " "
    << boost::format("%1$b %2%\n")
         % true
         % boost::io::group(std::boolalpha, true)
    ;
}
于 2020-10-02T16:15:37.350 に答える
1

私にはあなたができるようには見えません。

Boost.Formatのドキュメントとコードを確認しましたが、何も表示されませんでした。

一方、サンプルコードは、ユーザー定義型のフォーマッターを作成する方法を示しています。あなたは「ブール」のためにそれを書くことができます

于 2012-12-04T18:42:18.503 に答える