当前位置: 首页>>代码示例>>C++>>正文


C++ StringPtr::ptr方法代码示例

本文整理汇总了C++中StringPtr::ptr方法的典型用法代码示例。如果您正苦于以下问题:C++ StringPtr::ptr方法的具体用法?C++ StringPtr::ptr怎么用?C++ StringPtr::ptr使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在StringPtr的用法示例。


在下文中一共展示了StringPtr::ptr方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: testPkt

void testPkt()
{
	typedef boost::shared_ptr<FreeList<net_pk> > NetPacketFLShrPtr;
	NetPacketFLShrPtr pkFL(new FreeList<net_pk>(5, 10));
	sPkFList.set(pkFL);
	IPacketShrPtr pk = allocPacket();
	pk->setMsg(M_JUMP);
	pk->put("teststring", 10);
	pk->put("teststr2", 8);
	StringPtr ms;
	pk->get(ms, pk->getSize());
	printf("pk: %s\n", ms.ptr());
	printf("pk size: %d\n", pk->getSize());
	printf("msg: %s\n", g_msgs[pk->getMsg()].c_str());

	IPacketParserShrPtr pkpr(new packet_builder);

	char str[PKT_MAX_SIZE] = "001400ACTION1#nous|1&4&5&1";
	std::vector<IPacketShrPtr> pks;
	pkpr->parse(str, 2, pks);
	pkpr->parse(str+2, 1, pks);
	pkpr->parse(str+3, 1, pks);
	pkpr->parse(str+4, 2, pks);
	pkpr->parse(str+6, 1, pks);
	pkpr->parse(str+7, 2, pks);
	pkpr->parse(str+9, 17, pks);

	for (uint32 i=0; i<pks.size(); ++i)
	{
		StringPtr msi;
		pks[i]->get(msi, pks[i]->getSize());
		printf("pks[i]: %s\n", msi.ptr());
		printf("pks[i] size: %d\n", pks[i]->getSize());
		printf("msg: %s\n", g_msgs[pks[i]->getMsg()].c_str());
		Args args_list;
		packet_seer psr;
		pks[i]->reset();
		psr.analyse_packet(pks[i], args_list, g_spts);
		std::vector<Arg>& args = args_list.argList;
		for (uint32 i=0; i<args.size(); ++i)
		{
			printf("args[%d]: arg: %s\n", i, args[i].arg.c_str());
		}
	}

	getchar();
}
开发者ID:utah2013zyd,项目名称:Game,代码行数:47,代码来源:ActOGServer.cpp


注:本文中的StringPtr::ptr方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。