修复windows dll中的内存泄漏 继承了一些看起来像C++或.NET的代码?这不在我的驾驶室里。无论如何,它会通过使用堆内存,然后反复重新分配本地内存而导致内存泄漏: CPTRecord* pRec = static_cast<CPTRecor
修复windows dll中的内存泄漏 <>继承了一些看起来像C++或.NET的代码?这不在我的驾驶室里。无论如何,它会通过使用堆内存,然后反复重新分配本地内存而导致内存泄漏:修复windows dll中的内存泄漏 继承了一些看起来像C++或.NET的代码?这不在我的驾驶室里。无论如何,它会通过使用堆内存,然后反复重新分配本地内存而导致内存泄漏: CPTRecord* pRec = static_cast<CPTRecor,c++,string,dll,mfc,C++,String,Dll,Mfc,修复windows dll中的内存泄漏 继承了一些看起来像C++或.NET的代码?这不在我的驾驶室里。无论如何,它会通过使用堆内存,然后反复重新分配本地内存而导致内存泄漏: CPTRecord* pRec = static_cast<CPTRecord*>(pData); // Remove channel # from end of test name CString testName = pRec->m_stdf.test_txt; int strIndex = tes
CPTRecord* pRec = static_cast<CPTRecord*>(pData);
// Remove channel # from end of test name
CString testName = pRec->m_stdf.test_txt;
int strIndex = testName.ReverseFind(' ');
if (strIndex != -1)
{
testName.Delete(strIndex,9);
pRec->m_stdf.test_txt = (char *)LPCTSTR(testName);
pRec->m_stdf.test_txt_size = testName.GetLength();
}
CPTRecord*pRec=static_cast(pData);
//从测试名称末尾删除通道#
CString testName=pRec->m_stdf.test_txt;
int strIndex=testName.ReverseFind(“”);
如果(strIndex!=-1)
{
testName.Delete(strIndex,9);
pRec->m_stdf.test_txt=(char*)LPCTSTR(testName);
pRec->m_stdf.test_txt_size=testName.GetLength();
}
我不确定如何使用指针,或者使用<代码> MeMCPY < /C>,而不是使用< C++ >(char)LPCTSTR < /Calp><:你认为这里哪里有漏洞?如果动态分配了
test\u text
,则只需在分配新值之前删除它即可。更好的是;仅在需要时使用std::string
(或std::wstring
)并创建LPCTSTR
。此外,这是C++,所以没有太多的理由使用<代码> Malc 和