青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
金慶的專欄
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)
相冊
公告照片
搜索
積分與排名
積分 - 665343
排名 - 24
最新評論
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" 錯誤(11084)
2.?SVN中邪惡的replace(11014)
3.?VS2005編譯libevent(10475)
4.?混音算法的學習與研究(10274)
5.?C調用lua腳本的效率測試(9030)
評論排行榜
1.?VC6正在被拋棄(35)
2.?VS2005編譯libevent(21)
3.?"multiple definition of" 錯誤(18)
4.?C++引用優于指針(17)
5.?ACE與ASIO之間關于Socket編程的比較(16)
behaviac動態庫運行出錯
behaviac動態庫運行出錯
(金慶的專欄 2017.3.16)
游戲是靜態鏈接的運行庫,添加behaviac動態庫后,運行出錯:
> ucrtbased.dll!free_dbg_nolock(void * const block, const int block_use) 行 996 C++
ucrtbased.dll!_free_dbg(void * block, int block_use) 行 1030 C++
libbehaviac_msvc_debug.dll!operator delete(void * block) 行 17 C++
libbehaviac_msvc_debug.dll!std::_Deallocate(void * _Ptr, unsigned int _Count, unsigned int _Sz) 行 132 C++
libbehaviac_msvc_debug.dll!std::allocator<std::_Container_proxy>::deallocate(std::_Container_proxy * _Ptr, unsigned int _Count) 行 720 C++
libbehaviac_msvc_debug.dll!std::_Wrap_alloc<std::allocator<std::_Container_proxy> >::deallocate(std::_Container_proxy * _Ptr, unsigned int _Count) 行 988 C++
libbehaviac_msvc_debug.dll!std::_String_alloc<std::_String_base_types<char,std::allocator<char> > >::_Free_proxy() 行 661 C++
libbehaviac_msvc_debug.dll!std::_String_alloc<std::_String_base_types<char,std::allocator<char> > >::~_String_alloc<std::_String_base_types<char,std::allocator<char> > >() 行 629 C++
libbehaviac_msvc_debug.dll!std::basic_string<char,std::char_traits<char>,std::allocator<char> >::~basic_string<char,std::char_traits<char>,std::allocator<char> >() 行 1018 C++
libbehaviac_msvc_debug.dll!behaviac::CTagObject::Save(behaviac::IIONode * node, const char * szClassName) 行 100 C++
libbehaviac_msvc_debug.dll!behaviac::Agent::InitVariableRegistry() 行 476 C++
libbehaviac_msvc_debug.dll!behaviac::Agent::Init_(int contextId, behaviac::Agent * pAgent, short priority, const char * agentInstanceName) 行 227 C++
giant_test_client.exe!behaviac::Agent::InitAgent(behaviac::Agent * pAgent, const char * agentInstanceName, const char * agentInstanceNameAny, bool bToBind, int contextId, short priority) 行 56 C++
giant_test_client.exe!behaviac::Agent::Create<PlaneAgent>(const char * agentInstanceName, int contextId, short priority) 行 88 C++
giant_test_client.exe!Client::InitPlayer() 行 36 C++
giant_test_client.exe!Client::Client() 行 23 C++
giant_test_client.exe!main() 行 50 C++
giant_test_client.exe!invoke_main() 行 64 C++
giant_test_client.exe!__scrt_common_main_seh() 行 253 C++
giant_test_client.exe!__scrt_common_main() 行 296 C++
giant_test_client.exe!mainCRTStartup() 行 17 C++
kernel32.dll!@BaseThreadInitThunk@12() 未知
ntdll.dll!___RtlUserThreadStart@8() 未知
ntdll.dll!__RtlUserThreadStart@8() 未知
看來是string跨越動態庫析構。
如果string在動態庫中構造又析構,動態庫的運行時庫可以與主程序不同。
但如果用主程序的運行時申請內存,在動態庫中用另一個運行時庫釋放,就會產生上面的錯誤。
可以建立一個最小化的程序來復現上面的錯誤。
新建一個行為樹,為Agent創建一個屬性。
然后主程序運行庫設為:多線程調試 (/MTd),而不是:多線程調試 DLL (/MDd)。
調試運行創建Agent時就會出上面錯誤。
疑問是這是動態庫內部調用,怎么會產生跨庫析構呢?
斷點進入string的構造過程可以發現,string不是動態庫構造的,而是主程序構造的:
> test_client.exe!behaviac::StringUtils::internal::ToString(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & val) 行 138 C++
test_client.exe!behaviac::StringUtils::Detail::ToStringPtrHanler<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,0>::ToString(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & v) 行 192 C++
test_client.exe!behaviac::StringUtils::Detail::ToStringEnumHanler<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,0>::ToString(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & v) 行 228 C++
test_client.exe!behaviac::StringUtils::Detail::ToStringStructHanler<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,0>::ToString(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & val) 行 242 C++
test_client.exe!behaviac::StringUtils::ToString<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & val) 行 256 C++
test_client.exe!behaviac::SetFromString_t<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,0>::Get(std::basic_string<char,std::char_traits<char>,std::allocator<char> > & value) 行 790 C++
test_client.exe!behaviac::CProperty<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >::GetValueToString(const behaviac::Agent * self) 行 848 C++
libbehaviac_msvc_debug.dll!behaviac::CTagObject::Save(behaviac::IIONode * node, const char * szClassName) 行 97 C++
libbehaviac_msvc_debug.dll!behaviac::Agent::InitVariableRegistry() 行 476 C++
libbehaviac_msvc_debug.dll!behaviac::Agent::Init_(int contextId, behaviac::Agent * pAgent, short priority, const char * agentInstanceName) 行 227 C++
test_client.exe!behaviac::Agent::InitAgent(behaviac::Agent * pAgent, const char * agentInstanceName, const char * agentInstanceNameAny, bool bToBind, int contextId, short priority) 行 56 C++
test_client.exe!behaviac::Agent::Create<PlaneAgent>(const char * agentInstanceName, int contextId, short priority) 行 88 C++
test_client.exe!Client::InitPlayer() 行 36 C++
test_client.exe!Client::Client() 行 23 C++
test_client.exe!main() 行 50 C++
test_client.exe!invoke_main() 行 64 C++
test_client.exe!__scrt_common_main_seh() 行 253 C++
test_client.exe!__scrt_common_main() 行 296 C++
test_client.exe!mainCRTStartup() 行 17 C++
kernel32.dll!75c3336a() 未知
[下面的框架可能不正確和/或缺失,沒有為 kernel32.dll 加載符號]
ntdll.dll!76fa9902() 未知
ntdll.dll!76fa98d5() 未知
原因為 IProperty::GetValueToString()是虛函數,實際實現是由主程序實現模板類。
behaviac::CProperty<>::GetValueToString()
解決方案為使用behaviac靜態庫并且靜態鏈接運行時庫。
posted on 2017-03-16 11:40
金慶
閱讀(783)
評論(0)
編輯
收藏
引用
所屬分類:
1. C/C++
、
2. 網游開發
只有注冊用戶
登錄
后才能發表評論。
相關文章:
How are dtLinks created in NavMesh
C++ parameter passing rules
Naming Conventions for Accessors
Visual Studio 2019 Compiler Hangs
Fbx File Format Identifier
查找內存錯誤
std::thread 中的異常會丟失調用棧
用賦值代替 protobuf CopyFrom()
vs2017 linux 編譯輸出改成 vs 格式
為 LiteIDE 添加選中標記
網站導航:
博客園
IT新聞
BlogJava
博問
Chat2DB
管理
Powered by:
C++博客
Copyright © 金慶
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
欧美女人交a
|
国产精品高潮久久
|
伊伊综合在线
|
免费亚洲网站
|
美女久久网站
|
亚洲理论在线观看
|
91久久精品国产91久久
|
亚洲女女女同性video
|
国产精品亚洲片夜色在线
|
午夜精品视频在线观看
|
亚洲综合日本
|
精品电影一区
|
亚洲激情成人在线
|
欧美特黄一级
|
久久久精品久久久久
|
久久午夜精品一区二区
|
99re国产精品
|
一区二区三区蜜桃网
|
国产亚洲欧美一区在线观看
|
久久亚洲免费
|
欧美—级在线免费片
|
午夜一区在线
|
久久国产欧美日韩精品
|
亚洲精品视频在线播放
|
亚洲自拍偷拍网址
|
亚洲国产天堂久久综合
|
一区二区高清在线
|
黄色日韩在线
|
一二三四社区欧美黄
|
一区二区三区在线不卡
|
国产人久久人人人人爽
|
久久高清福利视频
|
欧美成人资源
|
久久国产精品一区二区三区四区
|
欧美一区二区三区播放老司机
|
亚洲欧美色婷婷
|
亚洲精品一区二区三区av
|
亚洲一区二区三区影院
|
亚洲清纯自拍
|
欧美一区二区高清在线观看
|
一本色道久久综合亚洲精品婷婷
|
欧美在线一级va免费观看
|
一区二区三区 在线观看视
|
欧美一区日本一区韩国一区
|
亚洲美女黄色片
|
欧美在线免费看
|
亚洲一区二区精品在线
|
久久综合图片
|
久久综合给合久久狠狠色
|
久久高清免费观看
|
亚洲视频精选
|
欧美激情久久久
|
免费永久网站黄欧美
|
国产精品久久久久久久午夜片
|
欧美国产在线电影
|
一区二区在线观看av
|
亚洲一区国产一区
|
亚洲一区综合
|
欧美亚洲成人免费
|
日韩一级精品
|
一区二区三区国产精品
|
男人插女人欧美
|
欧美成人精精品一区二区频
|
黑人一区二区三区四区五区
|
先锋影音久久久
|
午夜精品视频
|
国产美女搞久久
|
性欧美1819性猛交
|
久久国产精品亚洲77777
|
国产精品网站在线播放
|
亚洲欧美日本日韩
|
欧美一二三区在线观看
|
国产精品婷婷
|
欧美亚洲免费高清在线观看
|
欧美一区二区三区在线观看
|
欧美第一黄网免费网站
|
欧美jizzhd精品欧美巨大免费
|
在线电影院国产精品
|
久久国产主播精品
|
欧美电影在线播放
|
99这里只有精品
|
欧美日韩在线视频观看
|
亚洲视频成人
|
久久国产精品毛片
|
亚洲电影第三页
|
欧美华人在线视频
|
日韩视频免费大全中文字幕
|
亚洲网址在线
|
国产午夜久久
|
欧美成人精品福利
|
亚洲裸体在线观看
|
性欧美大战久久久久久久免费观看
|
亚洲高清网站
|
一区二区高清视频在线观看
|
国产精品www.
|
久久婷婷av
|
亚洲人妖在线
|
久久精品成人
|
亚洲日本电影
|
国产精品视频久久久
|
久久国产99
|
亚洲日本在线视频观看
|
午夜精品一区二区三区在线播放
|
国产亚洲一区在线播放
|
欧美激情一区二区三区四区
|
亚洲欧美日韩精品久久奇米色影视
|
久久久一区二区三区
|
日韩一区二区免费高清
|
国产精品中文字幕欧美
|
久久免费精品日本久久中文字幕
|
亚洲精品美女久久7777777
|
欧美在线关看
|
在线视频你懂得一区二区三区
|
国产亚洲第一区
|
欧美激情一区二区三区在线视频
|
夜夜嗨av一区二区三区四季av
|
久久人人爽人人爽
|
亚洲一区二区三区免费观看
|
在线观看欧美日韩国产
|
国产精品另类一区
|
免费观看一区
|
久久精品一区四区
|
亚洲专区一区
|
亚洲精品欧美一区二区三区
|
蜜臀a∨国产成人精品
|
欧美亚洲日本国产
|
日韩亚洲欧美成人
|
激情小说另类小说亚洲欧美
|
国产精品国产三级国产普通话蜜臀
|
欧美日韩亚洲一区
|
老鸭窝91久久精品色噜噜导演
|
亚洲男人av电影
|
一区二区三区日韩在线观看
|
欧美激情亚洲国产
|
久久躁狠狠躁夜夜爽
|
久久国产一区
|
亚洲欧美春色
|
亚洲尤物影院
|
亚洲深夜福利在线
|
一区二区三区产品免费精品久久75
|
91久久精品美女高潮
|
一区二区三区我不卡
|
一区久久精品
|
韩国av一区二区三区
|
国产亚洲一区二区三区在线观看
|
国产精品久久久久久久久借妻
|
欧美日韩岛国
|
国产精品porn
|
国产精品视频yy9299一区
|
国产精品福利av
|
国产伦一区二区三区色一情
|
国产欧美一区二区三区久久人妖
|
国产伦精品一区二区三区视频孕妇
|
国产精品日日做人人爱
|
国产日本欧美在线观看
|
国产美女在线精品免费观看
|
国产日韩在线一区
|
精品动漫3d一区二区三区免费版
|
欧美深夜影院
|
国产精品久久久
|
国产欧美亚洲视频
|
韩国一区二区三区美女美女秀
|
国语自产精品视频在线看一大j8
|
在线电影院国产精品
|
亚洲日本黄色
|
亚洲一区影音先锋
|
久久精品视频免费
|
欧美二区在线
|
99在线精品视频在线观看
|
亚洲自拍16p
|
久久久久九九九九
|
欧美国产欧美综合
|
国产精品高潮呻吟久久av黑人
|
国产精品永久
|
亚洲黄页视频免费观看
|
亚洲神马久久
|
葵司免费一区二区三区四区五区
|
亚洲国产99
|
一区二区三区视频观看
|
久久激情中文
|
欧美日韩一区在线播放
|
好吊成人免视频
|
亚洲一区二区成人
|
免费在线一区二区
|
中文成人激情娱乐网
|
久久精品国产2020观看福利
|
欧美另类高清视频在线
|
国产手机视频一区二区
|
99精品黄色片免费大全
|
欧美在线视频免费播放
|
亚洲区在线播放
|
欧美亚洲免费电影
|
欧美三区视频
|
亚洲精品乱码久久久久久蜜桃麻豆
|
欧美视频在线观看一区二区
|
黄色日韩精品
|
欧美一区二区三区免费大片
|
亚洲国产精品久久久久
|
久久成人国产精品
|
国产精品免费久久久久久
|