Member 13261094 Ответов: 2

Получать отладочные утверждения не удалось, при переносе программы против 2010 года по VS2017


Я получаю сообщение Debug assertion failed in
delete [] pTransCodeString;
линия в VS 2017, она отлично работает в VS 2010.

void CContentHandler::characters(  const   XMLCh* const    chars
								    , const unsigned int    length)
{
	char *pTransCodeString = XMLString::transcode(chars);
	CString tempString(pTransCodeString);
	delete [] pTransCodeString;
	
    m_lastChars += tempString;

}


Is there any other way to write in 2017?


Что я уже пробовал:

Я уже прокомментировал
delete [] pTransCodeString;
этот код и работает нормально. но я не хочу это комментировать... так как мы просто занимаемся только миграцией... этот код используется во многих местах. пожалуйста, предложите.

2 Ответов

Рейтинг:
12

KarstenK

Почему бы вам не поискать его? Документация по XMLString???

Если вам не нравится проводить исследования для себя, вам следует подумать о том, чтобы прекратить кодирование.


CPallini

5.

Рейтинг:
1

Michael Haephrati

Вы должны использовать

XMLString::release(&pTransCodeString);

вместо
delete [] pTransCodeString;