本文整理汇总了C++中Version::AsString方法的典型用法代码示例。如果您正苦于以下问题:C++ Version::AsString方法的具体用法?C++ Version::AsString怎么用?C++ Version::AsString使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Version
的用法示例。
在下文中一共展示了Version::AsString方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: while
bool Version::operator < (Version ver) {
//Version string could have a wide variety of formats. Use regex to choose specific comparison types.
regex reg1("(\\d+\\.?)+"); //a.b.c.d.e.f.... where the letters are all integers, and 'a' is the shortest possible match.
//boost::regex reg2("(\\d+\\.?)+([a-zA-Z\\-]+(\\d+\\.?)*)+"); //Matches a mix of letters and numbers - from "0.99.xx", "1.35Alpha2", "0.9.9MB8b1", "10.52EV-D", "1.62EV" to "10.0EV-D1.62EV".
if (regex_match(verString, reg1) && regex_match(ver.AsString(), reg1)) {
//First type: numbers separated by periods. If two versions have a different number of numbers, then the shorter should be padded
//with zeros. An arbitrary number of numbers should be supported.
istringstream parser1(verString);
istringstream parser2(ver.AsString());
while (parser1.good() || parser2.good()) {
//Check if each stringstream is OK for i/o before doing anything with it. If not, replace its extracted value with a 0.
uint32_t n1, n2;
if (parser1.good()) {
parser1 >> n1;
parser1.get();
} else
示例2: UnSerialize
bool Scene::UnSerialize(DataStream* pStream)
{
uint32 v = pStream->ReadInt32();
if(Version(v) != g_scene_file_version)
{
logger() << ("invalid scene file version:") << "\n";
logger() << "should be:" << g_scene_file_version.AsString() << "\n";
logger() <<"file version:" << Version(v).AsString() << "\n";
return false;
}
if(false == UnSerializeObject(m_pRoot, pStream))
{
return false;
}
EventPtr pEvent = alloc_object<Event, uint32>(EV_SCENE_LOADED);
m_pObjectManager->DispatchEvent(pEvent);
return true;
}