- PVSM.RU - https://www.pvsm.ru -

C++ Debugger Visualizers: отображение типов в отладчике из Boost, wxWidgets, TinyXML и TinyXML2

image [1]С незапамятных времен в Visual Studio существовала возможность написания визуализаторов для своих C++ типов, что позволяет изменить способ отображения типов в окнах отображающих содержимое переменных в отладчике (такие как auto, watch, locals и всплывающие подсказки для переменных). В Visual Studio 2012 появилась возможность в расширениях к Visual Studio распространять визуализаторы в новом формате natvis.

Были конвертированы старые визуализаторы для Boost'а [2] и мои старые для TinyXML [3], а также добавил новые визуализаторы для Boost, wxWidgets и TinyXML2. Получилось в итоге расширение к Visual Studio 2012 — C++ Debugger Visualizers [4]

Список поддерживаемых типов:

  • Boost library
    • boost::shared_ptr, boost::weak_ptr, boost::intrusive_ptr, boost::shared_array, boost::scoped_ptr, boost::scoped_array
    • boost::ptr_array, boost::ptr_vector, boost::ptr_list, boost::ptr_deque, boost::ptr_map, boost::ptr_set, boost::ptr_multimap, boost::ptr_multiset
    • boost::array, boost::dynamic_bitset, boost::circular_buffer
    • boost::unordered_map, boost::unordered_set, boost::unordered_multimap, boost::unordered_multiset
    • boost::container::basic_string, boost::container::deque, boost::container::vector
    • boost::optional, boost::any, boost::variant
    • boost::filesystem::path, boost::filesystem::directory_entry, boost::filesystem::file_status
    • boost::posix_time::ptime, boost::posix_time::time_duration
    • boost::regex
    • boost::interprocess::offset_ptr
    • boost::tribool
    • boost::unique_lock
    • boost::uuids::uuid
  • wxWidgets library: wxPoint, wxSize, wxRect, wxDateTime, wxLongLong, wxString, wxArrayString, wxDir, wxFileName
  • TinyXML library: TiXmlNode, TiXmlElement, TiXmlAttribute
  • TinyXML2 library: XMLNode, XMLElement, XMLAttribute
  • HRESULT for DirectX

Ссылки по теме:

Автор: KindDragon


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/c-3/14895

Ссылки в тексте:

[1] Image: http://visualstudiogallery.msdn.microsoft.com/c7e02633-86d9-4262-b745-6cc647afb3a8/showImage/79910

[2] визуализаторы для Boost'а: https://svn.boost.org/trac/boost/wiki/DebuggerVisualizers

[3] TinyXML: http://kinddragon.blogspot.com/2009/08/visual-studio-autoexpdat.html

[4] C++ Debugger Visualizers: http://bit.ly/Mn73hE

[5] Debugger Type Visualizers for C++ in Visual Studio 2012: http://blogs.msdn.com/b/vcblog/archive/2012/07/12/10329460.aspx

[6] Writing debugger type visualizers for C++ using .natvis files: http://code.msdn.microsoft.com/windowsdesktop/Writing-type-visualizers-2eae77a2

[7] Writing graphical debugger visualizers for C++: http://code.msdn.microsoft.com/Writing-graphical-debugger-a17e3d75