小智 50
以防万一,还有boost::uuids::to_string
如下工作原理:
#include <boost/uuid/uuid.hpp>
#include <boost/uuid/uuid_io.hpp>
boost::uuids::uuid a = ...;
const std::string tmp = boost::uuids::to_string(a);
const char* value = tmp.c_str();
Run Code Online (Sandbox Code Playgroud)
小智 43
你可以使用在引擎盖下使用std :: stringstream的boost :: lexical_cast来更容易地做到这一点.
#include <boost/lexical_cast.hpp>
#include <boost/uuid/uuid_io.hpp>
const std::string tmp = boost::lexical_cast<std::string>(theUuid);
const char * value = tmp.c_str();
Run Code Online (Sandbox Code Playgroud)
Ree*_*sey 11
您可以包含<boost/uuid/uuid_io.hpp>
然后使用运算符将uuid转换为a std::stringstream
.从那里,它是const char*
根据需要的标准转换.
有关详细信息,请参阅Uuid文档的输入和输出第二个.
std::stringstream ss;
ss << theUuid;
const std::string tmp = ss.str();
const char * value = tmp.c_str();
Run Code Online (Sandbox Code Playgroud)
(有关为什么需要"tmp"字符串的详细信息,请参阅此处.)