ááœááºá áá áááºáá±á·ááœáẠáá áºááŸá áºááœá²áá®ážáá«áž ááœá¶á·ááŒáá¯ážááá¯ážáááºááŸá¯á¡ááŒá®ážááœáẠáá¬ážááŸááºáž 1.16 ááᯠáá¯ááºááŒááºáá²á·áááºá pugixml â XML ááᯠparsing ááŸáá·áº processing á¡ááœáẠááŒááºáááºáá±á¬ cross-platform library áá áºáᯠ(MIT ááá¯ááºá ááº)á
áá® library á document node ááœá±ááᯠááŒááºáááºážááŒá¯ááŒááºááá¯ááºáá²á· DOM ááá¯áá»áá¯áž interface ááᯠáá¶á·ááá¯ážáá±ážáá«áááºá XPath 1.0 áá²á· á¡ááá¯á¡áá»á±á¬áẠencoding ááŒá±á¬ááºážáá²áá±ážáá²á· full Unicode support (UTF-8, UTF-16 (BE/LE), UTF-32 (BE/LE), áá²á· UCS-2) ááá¯á·ááá¯áááºáž áá¶á·ááá¯ážáá±ážáá«áááºá
áá¶á·ááá¯ážáá±ážáá¬ážáá±á¬ á¡áá¯á¶ážááŒá¯ááŸá¯ááœáẠC++ á á¶á á¬ááŒáá·áºááá¯ááºááŸáá·áº ááŒáœááºážáá»ááºáá»á¬ážá ááŸáá·áº "header files only" áá¯ááºááá¯á· áá«áááºáááºá
áá«á ááŸááºááá¯ááºáá áºáá¯áá«áá² - áá®á á®áá¶ááááºážá áá®ááŸá áºááŸá¬ áá ááŒáá·áºáá«ááŒá®á á á¬ááŒáá·áºááá¯ááºáá²á· áááá¯ááºážááŒá±á¬ááºážáá²á· ááœá¶á·ááŒáá¯ážááá¯ážáááºááŸá¯á¡ááŒá±á¬ááºáž ááá¯ááá¯áááºááŸá¯ááá¯ááºáá«ááẠpugixml.org, GitHub ááá¯á·ááá¯áẠááááºážá ááááá¯á¶ážáá¯ááºáá±ááŸá¯ááœááºá
- á¡ááŒá¯á¡áá°ááŒá±á¬ááºážáá²ááŸá¯áá»á¬áž
- PCDATA ááá±ážááŒááºá ááºáá áºáᯠááá¬ááŒá áºáá±áá±á¬ ááŒááºá ááºáá»á¬ážááᯠááá¯á¡áá« ááá¬áááºáá»á¬ážááŒáá·áº áá¯ááºáá±ážáá«ááẠ(format_no_empty_element_tags parameter ááᯠá¡áá¯á¶ážáááŒá¯áá«á)á
- ááá¯ážáááºááŸá¯áá»á¬áž
- floating point áá¶áá«ááºáá»á¬ážááᯠááŒá±á¬ááºážáá²ááẠPUGIXML_CHARCONV_FLOAT option ááᯠááá·áºááœááºážáá¬ážááẠ; áááºážá¡ááœáẠC++17 ááá¯á¡ááºááŒá®áž áááºážááẠconversion áá»á¬ážááᯠlocale-independent ááŒá áºá á±ááŒá®áž á áœááºážáá±á¬ááºáááºááᯠááŒáŸáá·áºáááºáá±ážááá¯ááºáááºá
- xml_node::ensure_child ááŸáá·áº xml_node::ensure_attribute áá¯ááºáá±á¬ááºáá»ááºáá»á¬ážááᯠááá·áºááœááºážáá¬ážááŒá®ážá áááºááŸááºáá¬ážáá±á¬á¡áááºááŒáá·áº ááá±ážááŒááºá áẠááá¯á·ááá¯áẠattribute áá áºáá¯ááᯠááŒááºáá±ážááŒá®áž áááºážáá»á±á¬ááºáá¯á¶ážáá±áá«á ááá·áºááœááºážáá±ážáááºá
- á¡áááºááŒáá·áº node áá»á¬ážááŸáá·áº attribute áá»á¬ážááᯠááŸá¬ááœá±ááŒááºážá á áœááºážáá±á¬ááºááẠááá¯ážáááºáá¬ááŒááºážá
- ááᬠbuffer áá áºáá¯á០á á¬ááœááºá á¬áááºážáá áºáá¯ááᯠáááºááŒááºážááẠááŸááºáá¬ááºááœá²áá±ááŸá¯ááᯠááŒá áºáá±á«áºá á±áá±á¬á·áááºááá¯ááºáá«á
- XPath ááá¯ážáááºááŸá¯áá»á¬áž
- @attr > 5 áá²á·ááá¯á·áá±á¬ attribute áááºááá¯ážáá»á¬ážááᯠááœááºáá»ááºááá·áº ááá¯á·ááá¯áẠááŸáá¯ááºážááŸááºááá·áº query áá»á¬ážá á áœááºážáá±á¬ááºááẠááá¯ážáááºáá¬ááŒááºážá
- node áá»á¬ážááŸáá·áº attribute áá»á¬ážááᯠá¡áááºááŒáá·áº ááœá±ážáá»ááºáá±á¬ query áá»á¬ážá á áœááºážáá±á¬ááºááẠááá¯ážáááºáá¬ááŒááºážá
- á¡ááŸá¬ážááŒááºáááºááŸá¯áá»á¬áž
- á¡ááœááºáááºááŸáá¯ááºážáá±á¬ nesting level áá»á¬ážáá«ááŸááá±á¬ subtree áá»á¬ážááᯠáá»ááºááá·áºá¡áá« stack overflow ááᯠááŒá¯ááŒááºáá¬ážáááºá
- PUGIXML_WCHAR_MODE ááŸá 32-bit ááááºáá±á¬ááºážáá»á¬ážáá±á«áºááœáẠá¡ááœááºááŒá®ážáá¬ážáá±á¬ (> 1GB) á á¬ááœááºá á¬áááºážáá»á¬ážááᯠáááºááá·áºá¡áá« áá»áá¯á·ááœááºážááŸá¯áá»á¬ážááŒá áºá á±ááá¯ááºááá·áº integer overflow áá»á¬ážááᯠááŒááºáááºááŒá®ážááŒá áºáááºá
- áááºááá¯ážáá»á¬áž ááááºááŸááºááá±ážáá±á¬ string variable áá»á¬ážáá«ááá·áº xpath_variable_set object áá»á¬ážááᯠáá°ážáá°ááá·áºá¡áá« null pointer dereference error ááᯠááŒááºáááºááŒá®ážáá«ááŒá®á
- CMake áá¶á·ááá¯ážááŸá¯ ááá¯ážáááºááŸá¯áá»á¬áž
- PUGIXML_BUILD_APPLE_FRAMEWORK ááœá±ážáá»ááºááŸá¯á¡ááœáẠááá¯ááá¯áá±á¬ááºážááœááºáá±á¬ áá¶á·ááá¯ážááŸá¯á
- pugixml.cpp ááᯠááá·áºááœááºážáááºá¡ááœáẠCMake option PUGIXML_INSTALL_SOURCE ááᯠááá·áºááœááºážáá¬ážááẠ("headers only" mode ááœáẠá¡áá¯ááºáá¯ááºááá·áºá¡áá« á¡áá¯á¶ážáááºáááº)á
- ááœá²áááºá¡áá¯á¶ážááŒá¯ááá¯ááºááŸá¯ ááá¯ážáááºááŸá¯áá»á¬áž
- Visual Studio 2026 á¡ááœáẠááá±á¬áá»ááºááá¯ááºáá»á¬ážááŸáá·áº NuGet package áá»á¬ážááᯠááá·áºááœááºážáá¬ážáááºá
- pugixml.hpp ááá¯ááºááᯠááá¹áá¬áá¯á¶ážááá¯ááºáᬠáá±á¬áºáá»á°áž á¡ááá¯ááºážá¡á áá áºáá¯ááœáẠááá·áºááœááºážááá·áºá¡áá« C++20 áá±á¬áºáá»á°ážáá»á¬ážááŸáá·áº ááœá²áááºá¡áá¯á¶ážááŒá¯ááá¯ááºááŸá¯ ááŒá¿áá¬ááᯠááŒááºáááºááŒá®ážáá«ááŒá®á
- Clang ááŸáá·áº GCC ááááá±ážáá»ááºáá»á¬áž -Wextra-semi-stmtá -Wsign-conversion ááŸáá·áº -Wuninitialized (GCC 16) ááᯠááŒááºáááºááŒá®ážá
- Embarcadero C++ XE5 ááŒáá·áº compilation á¡ááŸá¬ážááᯠááŒááºáááºááŒá®ážá
- static analysis false positives á¡áá»á¬ážá¡ááŒá¬ážááᯠááŒááºáááºááŒá®ážáá«ááŒá®á
source: linux.org.ru




