Как я могу напечатать данные, содержащиеся в карте C ++ при отладке с использованием DBX - PullRequest
0 голосов
/ 27 марта 2012

Я хочу знать содержимое карты при отладке программы на c ++. Я использую командную строку dbx.

У меня есть указатель на карту.

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

-

Edit: p * dataMap даст мне это ::

 p *dataMap
*dataMap = {
    __t = {
        __buffer_size   = 32U
        __buffer_list   = {
            __data_ = 0x3ba2b8
        }
        __free_list     = (nil)
        __next_avail    = 0x474660
        __last          = 0x474840
        __header        = 0x3b97b8
        __node_count    = 76U
        __insert_always = false
        __key_compare   = {
/* try using "print -r" to see any inherited members */
        }
    }
}

Спасибо

Алок Кр.

1 Ответ

0 голосов
/ 03 апреля 2012

вам нужно написать функцию ksh для красивой печати карты, вот пример:

поместите следующую строку в .dbxrc

source / ksh_STL_map

в dbx,используйте ppp для вызова функции ksh, которая определена в ksh_STL_map:

(dbx) ppp k

k = 2 элемента {343, 0x301f8;565, 0x30208}

Я пытался опубликовать содержимое ksh_STL_map здесь, но этот формат редактора испортит содержимое, лучше, если вы отправите свое электронное письмо, тогда я могу отправить ksh_STL_map непосредственно вам.

...