У меня были ошибки при попытке разыменования указателей в некоторых учениках, указывающих на адрес 0xbaddc0dedeadbead, который, очевидно, является не случайным значением, а сообщением «Плохое декодирование мертвого шарика», но от кого?
Знание этого может помочь исправить эти ошибки; это компилятор C ++ (llvm), компоновщик, загрузчик или какой-либо другой сервис MacOS, который может создать этот адрес? (Я на MacOS 10.10). Ура!
Много c++
компиляторы инициализируют ваши указатели этим значением, если вы не инициализируете их вручную в режиме отладки, чтобы упростить поиск ошибок разыменования неинициализированных указателей.
Установка точки наблюдения показала, что в моем случае это освобождает кучу (через деструктор), которая перезаписывает объект free’d с этим значением.