我正在編寫一些使用第三方開源庫的函數。在發佈模式下,它隨機崩潰,但沒有其他信息。所以,我試圖調試這個問題。向量中調試斷言失敗錯誤
,當我在調試模式下運行,我得到的:
vector <bool> iterator not dereferencable
錯誤,並且它打破以
const _Vbase *_Getptr() const
{ // get pointer to base word
#if _ITERATOR_DEBUG_LEVEL == 2
if (this->_Getcont() == 0
|| this->_Myptr == 0
|| 0 <= this->_Valid(0))
{ // report error
_DEBUG_ERROR("vector<bool> iterator not dereferencable");
_SCL_SECURE_OUT_OF_RANGE;
}
在
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vector
我知道有信息關於這個在這裏,搜索告訴我,這很可能是一個將太多元素填充到矢量中的問題。
我的問題是:
由於斷點vector
發生,而不是在我的代碼,或第三方的代碼,我怎麼能找到它的具體功能是造成這個錯誤?
(第三方庫散落着兩vector<bool>
和iterator
。
謝謝。
如何調試101:調用堆棧 – LogicStuff
啊我明白了。調用堆棧中的當前行只顯示:> \t msvcp140d.dll!00007ffd173f0806()\t未知。當我點擊它時,給出'pdb沒有加載。 – anti
看起來像第三方庫是越野車,不能使用。 –