0
我試圖爲我們公司自定義智能指針創建調試可視化器。我想使用ExpandItem
來獲取僅一層的內容,適用於ref_ptr<Vector2d>
等具體類型,但不適用於像ref_ptr<IStreamManager>
這樣的虛擬類型。在使用虛擬類型時,我得到兩個條目,一個用於底層類型,然後我可以擴展,另一個用於__vfptr
。Visual Studio natvis顯示指針到接口
什麼我越來越:
v streamManagerPtr shared_ptr { count=35, ptr=... }
[Reference Count] 2
v [StreamMgr] {...}
m_resourceMgr shared_ptr { count=35, ptr=... }
m_fileMgr shared_ptr { count=23, ptr=... }
...
> __vfptr 0xdeadbeef
> [Raw View] {...}
我想要什麼:
v streamManagerPtr shared_ptr { count=35, ptr=... }
[Reference Count] 2
m_resourceMgr shared_ptr { count=35, ptr=... }
m_fileMgr shared_ptr { count=23, ptr=... }
...
> [Raw View] {...}
有什麼辦法把底層的動態類型多一個層次的內容,所以我不必須處理這種無用的嵌套層次?