Я хотел бы вывести содержимое объекта C ++ (случается, это циклическая реализация буфера) в строку для целей ведения журнала. Я планировал сделать это вручную, но потом заметил, что запуск print-object на моем объекте в отладчике GDB дает мне прекрасный форматированный вывод, например:
(gdb) print audioDebugMessageQueue
$1 = {
writePointer = 1,
readPointer = 0,
keys = {{
samples = {0.155292124, 0.106764726},
timeStamp = 1322767911,
numFrames = 1024
}, {
samples = {0, 0},
timeStamp = 0,
numFrames = 0
}, {
samples = {0, 0},
timeStamp = 0,
numFrames = 0
}, {
samples = {0, 0},
timeStamp = 0,
numFrames = 0
}, {
samples = {0, 0},
timeStamp = 0,
numFrames = 0
}, {
samples = {0, 0},
timeStamp = 0,
numFrames = 0
}, {
samples = {0, 0},
timeStamp = 0,
numFrames = 0
}, {
samples = {0, 0},
timeStamp = 0,
numFrames = 0
}, {
samples = {0, 0},
timeStamp = 0,
numFrames = 0
}, {
samples = {0, 0},
timeStamp = 0,
numFrames = 0
}}
}
Если GDB может получить доступ к хорошему дампу моего объекта, я думаю, что, вероятно, тоже могу. Но как? Я на iOS, кстати.