Logo Search packages:      
Sourcecode: icu version File versions

Public Member Functions | Static Public Member Functions

UObject Class Reference

#include <uobject.h>

Inherits UMemory.

Inherited by AlphabeticIndex, Appendable, BitSet, BMPBitHash, BoyerMooreSearch, BreakIterator, Calendar, CanonicalIterator, CEList, CollationElementIterator, CollationKey, Collator, CollatorFactory, CollData, CurrencyPluralInfo, DateFormatSymbols, DateInterval, DateIntervalInfo, DateTimePatternGenerator, DateTimeRule, DecimalFormatSymbols, EventListener, FieldPosition, FieldPositionIterator, Format, Formattable, ForwardCharacterIterator, ICUServiceFactory, ICUServiceKey, IDNA, Integer, LayoutEngine, LEFontInstance, LEGlyphStorage, LEInsertionList, Locale, LocaleDisplayNames, Measure, MeasureUnit, MessagePattern, NFSubstitution, Normalizer, Normalizer2, NumberFormatFactory, NumberingSystem, ParagraphLayout, ParagraphLayout::Line, ParagraphLayout::VisualRun, ParsePosition, PluralRules, RegexMatcher, RegexPattern, Replaceable, ResourceBundle, RunArray, ScriptRun, SearchIterator, StringEnumeration, StringList, StringTrieBuilder, StringTrieBuilder::Node, TimeZone, TimeZoneRule, TimeZoneTransition, Transliterator, TrieSet, UCollationPCE, UnicodeFunctor, UnicodeSetIterator, UVector, UVector32, UVector64, UXMLElement, and UXMLParser.

Collaboration diagram for UObject:
Collaboration graph

List of all members.

Public Member Functions

virtual UClassID getDynamicClassID () const =0
virtual ~UObject ()

Static Public Member Functions

static void U_EXPORT2 operator delete (void *p) U_NO_THROW
static void U_EXPORT2 operator delete (void *, void *) U_NO_THROW
static void U_EXPORT2 operator delete[] (void *p) U_NO_THROW
static void *U_EXPORT2 operator new (size_t, void *ptr) U_NO_THROW
static void *U_EXPORT2 operator new (size_t size) U_NO_THROW
static void *U_EXPORT2 operator new[] (size_t size) U_NO_THROW

Detailed Description

UObject is the common ICU "boilerplate" class. UObject inherits UMemory (starting with ICU 2.4), and all other public ICU C++ classes are derived from UObject (starting with ICU 2.2).

UObject contains common virtual functions like for ICU's "poor man's RTTI". It does not contain default implementations of virtual methods like getDynamicClassID to allow derived classes such as Format to declare these as pure virtual.

The clone() function is not available in UObject because it is not implemented by all ICU classes. Many ICU services provide a clone() function for their class trees, defined on the service's C++ base class, and all subclasses within that service class tree return a pointer to the service base class (which itself is a subclass of UObject). This is because some compilers do not support covariant (same-as-this) return types; cast to the appropriate subclass if necessary.

ICU 2.2

Definition at line 215 of file uobject.h.

The documentation for this class was generated from the following files:

Generated by  Doxygen 1.6.0   Back to index