class UMemory

Defined at line 115 of file ../../third_party/icu/default/source/common/unicode/uobject.h

UMemory is the common ICU base class.

All other ICU C++ classes are derived from UMemory (starting with ICU 2.4).

This is primarily to make it possible and simple to override the

C++ memory management by adding new/delete operators to this base class.

To override ALL ICU memory management, including that from plain C code,

replace the allocation functions declared in cmemory.h

UMemory does not contain any virtual functions.

Common "boilerplate" functions are defined in UObject.

ICU 2.4

Public Methods

void * operator new (size_t size)

Override for ICU4C C++ memory management.

simple, non-class types are allocated using the macros in common/cmemory.h

(uprv_malloc(), uprv_free(), uprv_realloc());

they or something else could be used here to implement C++ new/delete

for ICU4C C++ classes

ICU 2.4

void * operator new[] (size_t size)

Override for ICU4C C++ memory management.

See new().

ICU 2.4

void operator delete (void * p)

Override for ICU4C C++ memory management.

simple, non-class types are allocated using the macros in common/cmemory.h

(uprv_malloc(), uprv_free(), uprv_realloc());

they or something else could be used here to implement C++ new/delete

for ICU4C C++ classes

ICU 2.4

void operator delete[] (void * p)

Override for ICU4C C++ memory management.

See delete().

ICU 2.4

void * operator new (size_t , void * ptr)

Override for ICU4C C++ memory management for STL.

See new().

ICU 2.6

Defined at line 166 of file ../../third_party/icu/default/source/common/unicode/uobject.h

void operator delete (void * , void * )

Override for ICU4C C++ memory management for STL.

See delete().

ICU 2.6

Defined at line 173 of file ../../third_party/icu/default/source/common/unicode/uobject.h