%s
フォーマット指定子を使用するとstd::string
、このように未定義の動作が発生することを私は知っています。
std::string myString = "test";
printf("%s", myString);
std::string
しかし、同じ指定子とを使用することは節約できますboost::format
か?
#include <boost/format.hpp>
int main()
{
std::string myString = "test";
boost::format fmt("%s");
fmt % myString;
std::cout << fmt.str();
return 0;
}
%s
(const)char*
を指定しますが、私はを提供しstd::string
ます。これはUBにもつながる可能性がありますか?