我刚刚开始在 C++ 中使用 boost,我只是想问几个与 uuid 相关的问题。
我正在加载一个文件,该文件需要我知道 uuid,以便我可以将一些对象链接在一起。因此,我正在尝试编写自己的 uuid,但我不确定字符串等是否有任何特殊条件,因为我一直在使用的字符串(通常是基本的字符串)不起作用。有人能指出我正确的方向吗?我尝试过使用字符串生成器,但到目前为止没有任何效果,所以我假设我的字符串有问题(目前只是随机单词)。
这是一个简短的示例,无法给出真正的代码:
void loadFiles(std::string xmlFile);
void linkObjects(custObj network)
{
for (int i = 0; i < network->getLength(); i++)
{
network[i]->setId([boost::uuid]);
if (i > 0)
network[i]->addObj(network[i-1]->getId());
}
}
我将你的问题视为“我需要样品”。这是一个示例,显示了
uuid 与 Boost Uuid。
#include <boost/uuid/uuid.hpp>
#include <boost/uuid/uuid_io.hpp>
#include <boost/uuid/random_generator.hpp>
#include <boost/lexical_cast.hpp>
using namespace boost::uuids;
int main()
{
random_generator gen;
for (int i = 0; i < 10; ++i)
{
uuid new_one = gen(); // here's how you generate one
std::cout << "You can just print it: " << new_one << "; ";
// or assign it to a string
std::string as_text = boost::lexical_cast<std::string>(new_one);
std::cout << "as_text: '" << as_text << "'\n";
// now, read it back in:
uuid roundtrip = boost::lexical_cast<uuid>(as_text);
assert(roundtrip == new_one);
}
}
See it 住在科里鲁 http://coliru.stacked-crooked.com/a/cdb333998f1a299d
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)