1

我有一个数组 gEpPool:

0:031:x86> dt gEpPool[1]
[1] 0x06b4d5c8 
   +0x004 m_objectID       : 0x33b
   +0x000 __VFN_table : 0x6a643330 
   +0x008 m_errorCode      : 0n0
   +0x00c m_beenHereOnce   : 0 ( NEVER_BEEN )
   +0x010 m_beenHere       : 0n0
   +0x014 m_header         : 0xbaadf00d Void
   +0x018 m_nodeType       : 0n23
   +0x01c m_myID           : 1
   +0x020 m_nodeID         : 0n1
   +0x024 m_nodesList      : CSimpleList
   +0x038 m_addressSet     : CEntitySet

我想显示嵌套在 m_nodesList 中的成员的内容:

0:031:x86> dt gEpPool[1] m_nodesList
[1] 0x06b4d5c8 
   +0x024 m_nodesList : CSimpleList

我知道如何递归地做到这一点:

0:031:x86> dt -r gEpPool[1]
[1] 0x06b4d5c8 
   +0x004 m_objectID       : 0x33b
   +0x000 __VFN_table : 0x6a643330 
   +0x008 m_errorCode      : 0n0
   +0x00c m_beenHereOnce   : 0 ( NEVER_BEEN )
   +0x010 m_beenHere       : 0n0
   +0x014 m_header         : 0xbaadf00d Void
   +0x018 m_nodeType       : 0n23
   +0x01c m_myID           : 1
   +0x020 m_nodeID         : 0n1
   +0x024 m_nodesList      : CSimpleList
      +0x000 m_objectID       : 0x33c
      +0x004 m_pTail          : 0x06b42938 SimpleCell
         +0x000 pNext            : (null) 
         +0x004 data             : 0x06b42960 Void
         +0x008 size             : 0xc
      +0x008 m_semaphore      : CSem
         +0x000 m_objectID       : 0x33d
         +0x004 m_sem            : (null) 
         +0x008 m_count          : 0xf00d
   +0x038 m_addressSet     : CEntitySet
      +0x000 m_objectID       : 0x33e
      +0x004 m_set            : [10] CEntitySet::setItems
         +0x000 from             : CEntityAddress
         +0x00c to               : CEntityAddress
         +0x018 mode             : 1 ( Set_Include )
         +0x01c user0            : 0xbaadf00d
         +0x020 user1            : 0xbaadf00d
      +0x16c m_numberOfEntriesInSet : 1

但是信息量太大了。我想gEpPool[1].m_nodesList.m_pTail->data直接查看会员。

我该怎么做?

一旦出现,我怎样才能将它显示为另一种类型(它被声明为void *,但我知道它更具体)?

4

1 回答 1

3
dt gEpPool[1] m_nodesList->m_pTail->data
于 2012-12-27T13:41:47.097 回答