diff options
Diffstat (limited to 'tools/intergen/third_party/pugixml/docs/samples/custom_memory_management.cpp')
-rw-r--r-- | tools/intergen/third_party/pugixml/docs/samples/custom_memory_management.cpp | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/tools/intergen/third_party/pugixml/docs/samples/custom_memory_management.cpp b/tools/intergen/third_party/pugixml/docs/samples/custom_memory_management.cpp new file mode 100644 index 000000000..92ccb7112 --- /dev/null +++ b/tools/intergen/third_party/pugixml/docs/samples/custom_memory_management.cpp @@ -0,0 +1,27 @@ +#include "pugixml.hpp" + +#include <new> + +//[code_custom_memory_management_decl +void* custom_allocate(size_t size) +{ + return new (std::nothrow) char[size]; +} + +void custom_deallocate(void* ptr) +{ + delete[] static_cast<char*>(ptr); +} +//] + +int main() +{ +//[code_custom_memory_management_call + pugi::set_memory_management_functions(custom_allocate, custom_deallocate); +//] + + pugi::xml_document doc; + doc.load("<node/>"); +} + +// vim:et |