十年網(wǎng)站開發(fā)經(jīng)驗 + 多家企業(yè)客戶 + 靠譜的建站團隊
量身定制 + 運營維護+專業(yè)推廣+無憂售后,網(wǎng)站問題一站解決
ntdll.dll!76fdfadc()未知
創(chuàng)新互聯(lián)主營定遠網(wǎng)站建設的網(wǎng)絡公司,主營網(wǎng)站建設方案,重慶APP開發(fā)公司,定遠h5微信平臺小程序開發(fā)搭建,定遠網(wǎng)站營銷推廣歡迎定遠等地區(qū)企業(yè)咨詢
[下面的框架可能不正確和/或缺失,沒有為 ntdll.dll 加載符號]
ntdll.dll!76fc4f92()未知
ntdll.dll!76fa26fc()未知
ntdll.dll!76fe0b37()未知
ntdll.dll!76f9a967()未知
kernel32.dll!750d14d1()未知
msvcr110.dll!free(void * pBlock) 行 51C
CThreeGridCtrlWithSign::`scalar deleting destructor'(unsigned int)C++
wxWindowBase::DestroyChildren(void)未知
wxNavigationEnabled
wxPanelBase::~wxPanelBase()C++
wxPanel::~wxPanel()C++
CFlightInstrumentPanel::~CFlightInstrumentPanel() 行 152C++
CFlightInstrumentPanel::`scalar deleting destructor'(unsigned int)C++
在處理該問題上,通過不斷的屏蔽掉已有的功能,才解決這個問題
原因分析:拷貝一個字符串給類的字符串數(shù)組,由于過長,導致數(shù)組越界,在析構類的時候,出現(xiàn)問題
問題回顧;free說明了類的釋放出現(xiàn)了問題,一個類的new操作,會分配一塊內(nèi)存保存類的成員變量,
delete的時候釋放,正常情況下,分配的內(nèi)存會有一個結束的標志位,當出現(xiàn)數(shù)組越界情況下,標志位
被覆蓋掉,導致釋放內(nèi)存的時候定位出錯
例子
#include
#include
#include
class Test
{
private:
char m_szTitle[8];
public:
void SetTitle(char* szTitle)
{
strcpy(m_szTitle, szTitle);
}
};
int main(int argc, char* argv[])
{
Test* pTest = new Test();
pTest->SetTitle("http://fengyuzaitu.blog.51cto.com");
delete pTest;
return 0;
}
注意:調(diào)用strncpy就不會出現(xiàn)類似的問題,指定了拷貝的長度