青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
金慶的專欄
C++博客
::
首頁
::
新隨筆
::
聯(lián)系
::
聚合
::
管理
::
423 隨筆 :: 0 文章 :: 454 評(píng)論 :: 0 Trackbacks
公告
我的隨筆
我的評(píng)論
我參與的隨筆
留言簿
(12)
給我留言
查看公開留言
查看私人留言
隨筆分類
(502)
1. C/C++(166)
(rss)
2. 網(wǎng)游開發(fā)(108)
(rss)
3. Golang(20)
(rss)
4. Linux/Unix(30)
(rss)
5. 軟工與管理(44)
(rss)
6. Python(23)
(rss)
7. Erlang(18)
(rss)
8. Rust(16)
(rss)
9. 其它(77)
(rss)
隨筆檔案
(423)
2023年1月 (1)
2022年11月 (1)
2022年10月 (2)
2022年9月 (1)
2022年4月 (6)
2022年1月 (2)
2021年12月 (4)
2021年11月 (6)
2021年10月 (2)
2021年9月 (2)
2021年8月 (7)
2021年7月 (2)
2021年5月 (2)
2021年3月 (1)
2021年2月 (2)
2021年1月 (1)
2020年12月 (1)
2020年10月 (1)
2020年9月 (5)
2020年8月 (1)
2020年7月 (1)
2020年6月 (1)
2020年4月 (2)
2020年3月 (3)
2020年2月 (3)
2020年1月 (1)
2019年12月 (1)
2019年9月 (2)
2019年4月 (2)
2019年1月 (1)
2018年12月 (1)
2018年11月 (3)
2018年10月 (1)
2018年9月 (3)
2018年8月 (3)
2018年7月 (2)
2018年6月 (4)
2018年5月 (4)
2018年4月 (4)
2018年3月 (1)
2018年1月 (2)
2017年12月 (2)
2017年11月 (3)
2017年10月 (3)
2017年8月 (7)
2017年7月 (1)
2017年6月 (1)
2017年5月 (3)
2017年4月 (3)
2017年3月 (3)
2017年2月 (2)
2017年1月 (2)
2016年12月 (5)
2016年11月 (2)
2016年10月 (2)
2016年9月 (1)
2016年8月 (6)
2016年7月 (3)
2016年6月 (2)
2016年5月 (4)
2016年4月 (2)
2016年3月 (2)
2016年1月 (3)
2015年12月 (2)
2015年11月 (2)
2015年10月 (1)
2015年8月 (2)
2015年7月 (1)
2015年6月 (1)
2015年5月 (4)
2015年4月 (3)
2015年3月 (4)
2015年2月 (5)
2015年1月 (4)
2014年12月 (3)
2014年11月 (3)
2014年10月 (2)
2014年9月 (3)
2014年8月 (1)
2014年4月 (4)
2014年3月 (1)
2014年2月 (4)
2014年1月 (5)
2013年12月 (5)
2013年11月 (5)
2013年9月 (2)
2013年8月 (2)
2013年7月 (2)
2013年6月 (2)
2013年5月 (1)
2013年1月 (2)
2012年12月 (1)
2012年11月 (1)
2012年9月 (1)
2012年8月 (3)
2012年7月 (2)
2012年6月 (1)
2012年4月 (3)
2012年3月 (2)
2012年2月 (3)
2012年1月 (2)
2011年11月 (2)
2011年10月 (3)
2011年9月 (2)
2011年8月 (2)
2011年7月 (3)
2011年6月 (2)
2011年5月 (3)
2011年1月 (2)
2010年12月 (1)
2010年11月 (2)
2010年10月 (2)
2010年9月 (3)
2010年8月 (2)
2010年7月 (3)
2010年6月 (1)
2010年5月 (3)
2010年4月 (3)
2010年3月 (5)
2010年2月 (4)
2010年1月 (4)
2009年12月 (2)
2009年11月 (3)
2009年10月 (4)
2009年9月 (3)
2009年8月 (2)
2009年7月 (4)
2009年6月 (1)
2009年5月 (3)
2009年4月 (4)
2009年3月 (2)
2009年2月 (5)
2009年1月 (1)
2008年12月 (7)
2008年11月 (4)
2008年10月 (1)
2008年9月 (3)
2008年8月 (4)
2008年7月 (3)
2008年6月 (4)
2008年5月 (6)
2008年4月 (7)
2008年3月 (6)
2008年1月 (5)
2007年12月 (7)
2007年11月 (4)
2007年10月 (5)
2007年9月 (6)
2007年8月 (8)
2007年7月 (5)
相冊(cè)
公告照片
搜索
積分與排名
積分 - 660008
排名 - 25
最新評(píng)論
1.?re: boost::asio::spawn 將一統(tǒng)C++網(wǎng)絡(luò)庫
asio 成為C++首選網(wǎng)絡(luò)庫
--linda
2.?re: log4cxx中文輸出錯(cuò)誤補(bǔ)丁
評(píng)論內(nèi)容較長,點(diǎn)擊標(biāo)題查看
--金慶
3.?re: mingw編譯OrzNet
能發(fā)送一個(gè)mingw編譯好的OrzNet庫給我嗎? liuweiqcxy@163.com
謝謝!
--劉威
4.?re: log4cxx中文輸出錯(cuò)誤補(bǔ)丁
評(píng)論內(nèi)容較長,點(diǎn)擊標(biāo)題查看
--bigbad
5.?re: log4cxx中文輸出錯(cuò)誤補(bǔ)丁
評(píng)論內(nèi)容較長,點(diǎn)擊標(biāo)題查看
--bigbad
閱讀排行榜
1.?"multiple definition of" 錯(cuò)誤(11061)
2.?SVN中邪惡的replace(10986)
3.?VS2005編譯libevent(10434)
4.?混音算法的學(xué)習(xí)與研究(10239)
5.?C調(diào)用lua腳本的效率測(cè)試(9020)
評(píng)論排行榜
1.?VC6正在被拋棄(35)
2.?VS2005編譯libevent(21)
3.?"multiple definition of" 錯(cuò)誤(18)
4.?C++引用優(yōu)于指針(17)
5.?ACE與ASIO之間關(guān)于Socket編程的比較(16)
Boost Serialization在網(wǎng)游中的應(yīng)用實(shí)例
Boost Serialization在網(wǎng)游中的應(yīng)用實(shí)例
(轉(zhuǎn)載請(qǐng)注明來源于金慶的專欄)
網(wǎng)游中需要在客戶端和服務(wù)器之間傳遞多個(gè)字符串,
字符串的個(gè)數(shù)不定, 各個(gè)字符串的長度也不定.
對(duì)于長度變化不大的字符串, 可以用最大字符串長度:
struct MyCmd : public Cmd
{
WORD wNumber;
BYTE aStrings[MAX_SIZE][0];
};
這樣會(huì)浪費(fèi)一點(diǎn)帶寬.
如果不這樣, 可以用一個(gè)長的數(shù)據(jù)串, 在數(shù)據(jù)頭部指出字符串的長度,
或者直接用'\0'分隔多個(gè)字符串, 如:
struct MyCmd : public Cmd
{
DWORD dwDataLen;
BYTE data[0];
};
這樣需要拼接和解析處理.
如果用序列化串, 可以很方便的解決該問題.
struct MyCmd : public Cmd
{
DWORD dwStrLen;
BYTE aSerializedStr[0];
};
利用boost::serialization可以序列化任意的std容器.
例如:
#include <boost/archive/text_oarchive.hpp>
#include <boost/serialization/vector.hpp>
...
std::vector<std::string> vStrings;
...
ostringstring oss;
boost::archive::text_oarchive oa(oss);
oa & vStrings;
std::string sSerialized = oss.str();
還原時(shí):
std::vector<std::string> vNewStrings;
istringstream iss(sSerialized);
boost::archive::test_iarchive ia(iss);
ia & vNewStrings;
如果是不同的std容器, 只需包含不同的serialization頭文件.
如果未包含相應(yīng)的serialization頭文件, 編譯會(huì)報(bào)serialize()函數(shù)未定義錯(cuò)誤.
如果是自定義的數(shù)據(jù)結(jié)構(gòu), 只需定義serialize()即可, 詳見boost文檔.
序列化串也可應(yīng)用于數(shù)據(jù)庫保存. 實(shí)際上可以保存任意的數(shù)據(jù)結(jié)構(gòu).
posted on 2009-09-21 13:32
金慶
閱讀(2299)
評(píng)論(5)
編輯
收藏
引用
所屬分類:
1. C/C++
、
2. 網(wǎng)游開發(fā)
評(píng)論
#
re: Boost Serialization在網(wǎng)游中的應(yīng)用實(shí)例
2009-09-21 16:33
teli_eurydice
Boost Serialization 在DEBUG下不能讀取內(nèi)容,不知道兄弟碰到過沒有 ,據(jù)說是析構(gòu)引起的
回復(fù)
更多評(píng)論
#
re: Boost Serialization在網(wǎng)游中的應(yīng)用實(shí)例
2009-09-21 17:33
金慶
@teli_eurydice
沒碰到過,給個(gè)示例看看?
回復(fù)
更多評(píng)論
#
re: Boost Serialization在網(wǎng)游中的應(yīng)用實(shí)例
2009-09-22 14:24
樂蜂網(wǎng)
開始就大方家
回復(fù)
更多評(píng)論
#
re: Boost Serialization在網(wǎng)游中的應(yīng)用實(shí)例
2010-07-27 03:27
yisa
為什么還在討論為String和一些常見的結(jié)構(gòu)體,類,容器做流化呢
這個(gè)已經(jīng)不是游戲開發(fā)中的繁瑣問題了
個(gè)人覺得:
能把服務(wù)器之間, 服務(wù)器和客戶端之間的指針(這些指針是雙方約定的)做流化, 更能解放開發(fā)人員, 提高開發(fā)效率, 減少bug, 代碼上也更加安全.
此外, 把收發(fā)包來做自動(dòng)流化, 反流化到自動(dòng)調(diào)用消息函數(shù), 更有意義;
比如:服務(wù)器
MessageInvoker<CellUnitEntity>::Invoke<MsgDst::CLIENT, MessageReceiver::ALL_CLIENT, ClientUnitFunc::OnMeleeAttack>
(_UnitEntity(), AttackController().GetTarget(), uiHitTime);
這個(gè)大概是: 服務(wù)器的對(duì)象在打人, 需要告訴客戶端, AttackController().GetTarget()是一個(gè)指針(對(duì)應(yīng)客戶端有約定), 這樣客戶端的一個(gè)函數(shù)原型:
void OnMeleeAttack(ClientGameUnit* pkVictim, const FvUInt32 uiHitTime);會(huì)被調(diào)用, 中間不再有人需要寫壓包解包調(diào)用的代碼
這樣對(duì)游戲開發(fā)和其他的RPC應(yīng)用顯然有更大的意義
回復(fù)
更多評(píng)論
#
re: Boost Serialization在網(wǎng)游中的應(yīng)用實(shí)例
2010-07-27 14:10
金慶
@yisa
這里的指針應(yīng)該是對(duì)象的ID號(hào)吧?RPC中就是對(duì)象的引用。
回復(fù)
更多評(píng)論
刷新評(píng)論列表
只有注冊(cè)用戶
登錄
后才能發(fā)表評(píng)論。
【推薦】100%開源!大型工業(yè)跨平臺(tái)軟件C++源碼提供,建模,組態(tài)!
相關(guān)文章:
How are dtLinks created in NavMesh
C++ parameter passing rules
Naming Conventions for Accessors
Visual Studio 2019 Compiler Hangs
Fbx File Format Identifier
查找內(nèi)存錯(cuò)誤
std::thread 中的異常會(huì)丟失調(diào)用棧
用賦值代替 protobuf CopyFrom()
vs2017 linux 編譯輸出改成 vs 格式
為 LiteIDE 添加選中標(biāo)記
網(wǎng)站導(dǎo)航:
博客園
IT新聞
BlogJava
博問
Chat2DB
管理
Powered by:
C++博客
Copyright © 金慶
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
亚洲人体影院
|
欧美日韩国产大片
|
国产日韩精品久久久
|
久久久精彩视频
|
西瓜成人精品人成网站
|
亚洲精品一区二
|
亚洲清纯自拍
|
日韩亚洲欧美一区
|
亚洲精品视频在线
|
亚洲乱码视频
|
国产精品99久久久久久人
|
99在线观看免费视频精品观看
|
91久久久一线二线三线品牌
|
亚洲电影第1页
|
99精品视频免费在线观看
|
亚洲精品视频在线观看免费
|
一本在线高清不卡dvd
|
亚洲午夜电影在线观看
|
亚洲欧美日韩综合一区
|
久久国产手机看片
|
免费观看成人鲁鲁鲁鲁鲁视频
|
欧美高清视频
|
国产精品视频免费在线观看
|
国产午夜精品一区理论片飘花
|
蜜臀av在线播放一区二区三区
|
免费成人毛片
|
欧美日韩一区二区视频在线
|
国产日韩欧美精品一区
|
亚洲精品黄网在线观看
|
欧美一区二区三区四区视频
|
亚洲黄色精品
|
亚洲欧美国产另类
|
亚洲国产精品第一区二区三区
|
亚洲欧美在线播放
|
久久国产直播
|
亚洲美女免费精品视频在线观看
|
香蕉国产精品偷在线观看不卡
|
美女国产一区
|
国产精品视频一二三
|
亚洲国产精品免费
|
亚洲欧美日韩在线综合
|
欧美国产激情
|
欧美亚洲一级
|
欧美性开放视频
|
亚洲精品少妇
|
老色鬼精品视频在线观看播放
|
一区二区成人精品
|
欧美精品www
|
激情欧美日韩一区
|
欧美一区二区三区啪啪
|
久久精品国产亚洲5555
|
欧美性久久久
|
一区二区三区久久久
|
免费成人性网站
|
欧美专区18
|
国产日本欧美一区二区三区在线
|
欧美在线视频导航
|
日韩亚洲不卡在线
|
欧美理论片在线观看
|
亚洲激情视频网
|
久久最新视频
|
久久久久久穴
|
在线观看av不卡
|
巨乳诱惑日韩免费av
|
欧美亚洲网站
|
国产一区自拍视频
|
欧美专区在线
|
欧美一二三区在线观看
|
国产精品一区亚洲
|
久久爱另类一区二区小说
|
亚洲综合久久久久
|
国产精品免费观看视频
|
性欧美大战久久久久久久久
|
亚洲一级二级
|
国产视频一区在线观看
|
欧美一区在线视频
|
午夜精品一区二区三区在线视
|
国产一区二区三区久久精品
|
国产精品久久久久久影视
|
欧美专区在线观看一区
|
欧美精品自拍
|
一区二区三区视频观看
|
亚洲视频免费在线
|
国产精品视频99
|
久久麻豆一区二区
|
久久综合狠狠综合久久综合88
|
亚洲国产精品成人精品
|
91久久久久久国产精品
|
欧美视频在线播放
|
欧美主播一区二区三区美女 久久精品人
|
午夜精品视频网站
|
一区二区在线观看视频
|
亚洲国产欧美一区
|
国产精品久久久久9999高清
|
久久精品五月婷婷
|
欧美大胆a视频
|
尤物网精品视频
|
91久久精品一区
|
国产美女精品
|
亚洲国产老妈
|
国产精品综合视频
|
欧美成人精品激情在线观看
|
欧美日韩一区二区在线观看视频
|
欧美在线视频在线播放完整版免费观看
|
欧美在线视频全部完
|
99精品国产在热久久下载
|
午夜欧美精品久久久久久久
|
亚洲国产一二三
|
亚洲天堂免费在线观看视频
|
精品动漫3d一区二区三区免费版
|
亚洲日本成人女熟在线观看
|
国产婷婷精品
|
一本色道久久88亚洲综合88
|
亚洲电影在线观看
|
一区电影在线观看
|
亚洲国产电影
|
亚洲欧美国产视频
|
亚洲毛片在线观看
|
久久久精品国产99久久精品芒果
|
在线亚洲欧美专区二区
|
久久午夜羞羞影院免费观看
|
亚洲欧美日韩国产综合
|
欧美激情综合五月色丁香小说
|
亚洲精品之草原avav久久
|
精品动漫一区
|
欧美一区二区三区四区视频
|
亚洲男女毛片无遮挡
|
欧美极品在线视频
|
欧美国产日韩一二三区
|
一区二区三区无毛
|
欧美亚洲自偷自偷
|
先锋资源久久
|
国产精品福利在线观看网址
|
亚洲日本久久
|
日韩一级精品
|
欧美激情按摩
|
亚洲欧洲日韩在线
|
亚洲日韩第九十九页
|
久久中文精品
|
久久综合伊人77777
|
国产在线一区二区三区四区
|
亚洲少妇一区
|
久久久久久久成人
|
亚洲国产视频一区
|
久久躁狠狠躁夜夜爽
|
久久综合色天天久久综合图片
|
国产亚洲免费的视频看
|
欧美一区二区三区在线免费观看
|
久久爱91午夜羞羞
|
国产日韩欧美在线播放不卡
|
午夜视频精品
|
噜噜噜久久亚洲精品国产品小说
|
好吊妞**欧美
|
麻豆成人在线播放
|
亚洲激情一区
|
亚洲一区二区精品在线
|
欧美特黄一区
|
亚洲欧美大片
|
久久综合色天天久久综合图片
|
亚洲激情社区
|
国产精品久久国产三级国电话系列
|
亚洲一区二区三区精品视频
|
欧美综合77777色婷婷
|
亚洲高清自拍
|
国产精品国产馆在线真实露脸
|
亚洲影院污污.
|
乱码第一页成人
|
一区二区三区欧美成人
|
国产欧美一区二区视频
|
久久亚洲春色中文字幕
|
亚洲美女视频在线观看
|
久久久久久久久久久成人
|
亚洲精品专区
|
国产日产精品一区二区三区四区的观看方式
|
黄色一区二区在线观看
|
蜜臀va亚洲va欧美va天堂
|
亚洲精品免费网站
|
国产精品sm
|
欧美自拍偷拍
|
日韩午夜电影av
|
欧美四级电影网站
|
老司机亚洲精品
|
亚洲人www
|
性欧美办公室18xxxxhd
|
亚洲精品欧美在线
|
欧美视频在线免费
|
午夜精品一区二区三区在线
|
99国产一区
|
国产亚洲一级
|
欧美成人r级一区二区三区
|
日韩视频在线观看
|
久久精品视频一
|
亚洲精品国久久99热
|
国产精品一二三
|
久热国产精品视频
|
免费亚洲一区二区
|
亚洲欧美电影院
|
亚洲第一毛片
|
狠狠色狠色综合曰曰
|
欧美日韩你懂的
|