2016-12-16 1 views
2

У меня были ошибки при попытке указателей разыменования в некоторых классах, указывающих на адрес 0xbaddc0dedeadbead, что явно не случайное значение, а сообщение «Плохой декодированный мертвый бусина», но от кого? Знание этого может помочь устранить эти ошибки; это компилятор C++ (llvm), компоновщик, загрузчик или те или иные службы MacOS, которые могут создавать этот адрес? (Я на MacOS 10.10). Ура!Что такое адрес 0xbaddc0dedeadbead «Bad decode dead bead»

ответ

4

Многие компиляторы c++ инициализируют ваши указатели с этим значением, если вы не инициализируете их вручную в режиме отладки, чтобы упростить поиск неинициализированных указателей на ошибки разыменования.

+0

Отлично, спасибо! – diemo

0

Установка точки наблюдения показала, что в моем случае она освобождала кучу (через деструктор), которая переписывала свободный объект с этим значением.

Смежные вопросы