金慶的專欄
C++博客
::
首頁
::
新隨筆
::
聯系
::
聚合
::
管理
::
423 隨筆 :: 0 文章 :: 454 評論 :: 0 Trackbacks
公告
我的隨筆
我的評論
我參與的隨筆
留言簿
(12)
給我留言
查看公開留言
查看私人留言
隨筆分類
(502)
1. C/C++(166)
(rss)
2. 網游開發(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)
相冊
公告照片
搜索
積分與排名
積分 - 656585
排名 - 25
最新評論
1.?re: boost::asio::spawn 將一統C++網絡庫
asio 成為C++首選網絡庫
--linda
2.?re: log4cxx中文輸出錯誤補丁
評論內容較長,點擊標題查看
--金慶
3.?re: mingw編譯OrzNet
能發送一個mingw編譯好的OrzNet庫給我嗎? liuweiqcxy@163.com
謝謝!
--劉威
4.?re: log4cxx中文輸出錯誤補丁
評論內容較長,點擊標題查看
--bigbad
5.?re: log4cxx中文輸出錯誤補丁
評論內容較長,點擊標題查看
--bigbad
閱讀排行榜
1.?"multiple definition of" 錯誤(11032)
2.?SVN中邪惡的replace(10955)
3.?VS2005編譯libevent(10413)
4.?混音算法的學習與研究(10203)
5.?C調用lua腳本的效率測試(9007)
評論排行榜
1.?VC6正在被拋棄(35)
2.?VS2005編譯libevent(21)
3.?"multiple definition of" 錯誤(18)
4.?C++引用優于指針(17)
5.?ACE與ASIO之間關于Socket編程的比較(16)
Protobuf-net判斷字段是否有值
Protobuf-net判斷字段是否有值
Unity3d使用Protobuf-net序列化數據與服務器通信,
但是發現默認情況下,Protobuf-net生成的cs文件中沒有接口判斷可選參數是否有值。
需有添加 -p:detectMissing 參數才能生成判斷接口。
在C++中生成 has_*() 接口,在C#中是 *Specified() 接口。
例如 rpc.proto:
message RpcRequest {
optional uint32 id = 1; // One-way request has no id.
...
}
生成rpc.cs:
protogen -i:rpc.proto -o:%OUT_DIR%/rpc.cs
public partial class RpcRequest : global::ProtoBuf.IExtensible
{
private uint _id = default(uint);
public uint id
{
get { return _id; }
set { _id = value; }
}
...
}
添加 -p:detectMissing 參數后:
protogen -i:rpc.proto -o:%OUT_DIR%/rpc.cs -p:detectMissing
public partial class RpcRequest : global::ProtoBuf.IExtensible
{
private uint? _id;
public uint id
{
get { return _id?? default(uint); }
set { _id = value; }
}
public bool idSpecified
{
get { return this._id != null; }
set { if (value == (this._id== null)) this._id = value ? this.id : (uint?)null; }
}
private bool ShouldSerializeid() { return idSpecified; }
private void Resetid() { idSpecified = false; }
...
}
參考:
protobuf-net missing has_ function for optional fields?.
( http://stackoverflow.com/questions/18889249/protobuf-net-missing-has-function-for-optional-fields )
Issue 406: has_ functions missing in protobuf-net?
( https://code.google.com/p/protobuf-net/issues/detail?id=406 )
posted on 2015-05-20 19:47
金慶
閱讀(2590)
評論(0)
編輯
收藏
引用
所屬分類:
9. 其它
只有注冊用戶
登錄
后才能發表評論。
【推薦】100%開源!大型工業跨平臺軟件C++源碼提供,建模,組態!
相關文章:
TortoiseGit is OK but GitExtensions fails
DeathVoteExpirationTimeout in Orleans
How to delete local branches of GitExtension
Clustering provider in Orleans
Why Orleans' actor is virutal
What comes after microservice?
Rust Deref coercion example
Rust Error Return Check Policy
Rust visibility
Why does Rust check borrow even in single thread
網站導航:
博客園
IT新聞
BlogJava
博問
Chat2DB
管理
Powered by:
C++博客
Copyright © 金慶
伊人久久大香线蕉成人
|
久久久无码一区二区三区
|
国内精品久久久久伊人av
|
久久天堂AV综合合色蜜桃网
|
区久久AAA片69亚洲
|
久久久精品2019免费观看
|
久久91综合国产91久久精品
|
国产亚州精品女人久久久久久
|
久久久久人妻一区精品
|
久久性精品
|
久久99久久99精品免视看动漫
|
日本久久久精品中文字幕
|
久久99精品久久久久久不卡
|
国产欧美久久久精品影院
|
91精品国产91久久久久福利
|
久久久久人妻一区精品
|
狠狠色丁香久久婷婷综合五月
|
狠狠久久综合伊人不卡
|
午夜不卡久久精品无码免费
|
久久99热这里只有精品国产
|
亚洲国产另类久久久精品
|
国产成人99久久亚洲综合精品
|
久久亚洲精品无码aⅴ大香
|
伊人久久综合热线大杳蕉下载
|
囯产精品久久久久久久久蜜桃
|
99久久精品免费看国产一区二区三区
|
性欧美大战久久久久久久
|
精品久久久久久综合日本
|
久久精品国产日本波多野结衣
|
99久久精品无码一区二区毛片
|
91精品国产色综合久久
|
久久九九免费高清视频
|
国产韩国精品一区二区三区久久
|
日本精品久久久久中文字幕8
|
亚洲国产精品久久电影欧美
|
久久一区二区免费播放
|
99久久99久久精品国产
|
99久久国产综合精品麻豆
|
国内精品久久久久久99蜜桃
|
亚洲午夜久久久影院伊人
|
久久久久久久91精品免费观看
|