亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区
Chinaunix
標(biāo)題:
一個(gè)智能指針shared_ptr錯(cuò)誤問(wèn)題
[打印本頁(yè)]
作者:
int-main
時(shí)間:
2011-08-20 11:18
標(biāo)題:
一個(gè)智能指針shared_ptr錯(cuò)誤問(wèn)題
我使用dllopen動(dòng)態(tài)加載一個(gè)庫(kù)時(shí),引用了一個(gè)智能指針,結(jié)果極少概率出現(xiàn)
T* boost::shared_ptr<T>::operator->() const [with T = UserInfo]: Assertion `px != 0' failed.
復(fù)制代碼
這個(gè)意味著shared_ptr中的對(duì)象已經(jīng)被銷(xiāo)毀了,為什么會(huì)這樣呢?
是不是不能在使用動(dòng)態(tài)庫(kù)時(shí)又使用引用 ?
extern "C"
{
void Enter(const boost::shared_ptr<UserInfo>&Handler)
{
OnMessage(Handler);
}
}
作者:
int-main
時(shí)間:
2011-08-20 15:24
貼gdb內(nèi)容
#0 0x0000003dcec30265 in raise () from /lib64/libc.so.6
#1 0x0000003dcec31d10 in abort () from /lib64/libc.so.6
#2 0x0000003dcec296e6 in __assert_fail () from /lib64/libc.so.6
#3 0x000000000049ae9f in boost::shared_ptr<Games>::operator->() const ()
#4 0x000000000047ba7a in Group::AddGroup(boost::shared_ptr<UserInfo>, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) ()
#5 0x00002aaab06a7e75 in MyMsg::OnMessage (this=0x448e640, handler=..., msg=...) at my_msg.cpp:78
#6 0x00002aaab068f443 in Enter (Handler=..., str=...) at my_msg.cpp:390
.........................
復(fù)制代碼
作者:
雨過(guò)白鷺洲
時(shí)間:
2011-08-20 15:48
extern "C"
然后又是C++,這個(gè)行嗎?
作者:
int-main
時(shí)間:
2011-08-20 22:42
extern "C"
然后又是C++,這個(gè)行嗎?
雨過(guò)白鷺洲 發(fā)表于 2011-08-20 15:48
行的,謝謝。
問(wèn)題找到了,是因?yàn)槟承l件跳過(guò)了實(shí)例化,而直接使用了空智能指針。
歡迎光臨 Chinaunix (http://72891.cn/)
Powered by Discuz! X3.2