File: custom_memory_management.cpp

package info (click to toggle)
pugixml 1.14-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 4,052 kB
  • sloc: cpp: 24,068; xml: 2,151; makefile: 80; python: 44; sh: 9
file content (27 lines) | stat: -rw-r--r-- 425 bytes parent folder | download | duplicates (11)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include "pugixml.hpp"

#include <new>

// tag::decl[]
void* custom_allocate(size_t size)
{
    return new (std::nothrow) char[size];
}

void custom_deallocate(void* ptr)
{
    delete[] static_cast<char*>(ptr);
}
// end::decl[]

int main()
{
// tag::call[]
    pugi::set_memory_management_functions(custom_allocate, custom_deallocate);
// end::call[]

    pugi::xml_document doc;
    doc.load_string("<node/>");
}

// vim:et