ICU 53.1  53.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions
icu::UObject Class Reference

UObject is the common ICU "boilerplate" class. More...

#include <uobject.h>

Inheritance diagram for icu::UObject:
icu::UMemory icu::AlphabeticIndex icu::AlphabeticIndex::Bucket icu::AlphabeticIndex::ImmutableIndex icu::Appendable icu::BreakIterator icu::Calendar icu::CanonicalIterator icu::CollationElementIterator icu::CollationKey icu::Collator icu::CollatorFactory icu::CurrencyPluralInfo icu::DateFormatSymbols icu::DateInterval icu::DateIntervalInfo icu::DateTimePatternGenerator icu::DateTimeRule icu::DecimalFormatSymbols icu::FieldPosition icu::FieldPositionIterator icu::FilteredBreakIteratorBuilder icu::Format icu::Formattable icu::ForwardCharacterIterator icu::GenderInfo icu::IDNA icu::LayoutEngine icu::LEFontInstance icu::LEGlyphStorage icu::ListFormatter icu::Locale icu::LocaleDisplayNames icu::Measure icu::MeasureUnit icu::MessagePattern icu::Normalizer icu::Normalizer2 icu::NumberFormatFactory icu::NumberingSystem icu::ParagraphLayout icu::ParagraphLayout::Line icu::ParagraphLayout::VisualRun icu::ParsePosition icu::PluralRules icu::RegexMatcher icu::RegexPattern icu::Region icu::RelativeDateTimeFormatter icu::Replaceable icu::ResourceBundle icu::RunArray icu::SearchIterator icu::StringEnumeration icu::StringTrieBuilder icu::StringTrieBuilder::Node icu::TimeZone icu::TimeZoneNames icu::TimeZoneRule icu::TimeZoneTransition icu::Transliterator icu::UnicodeFunctor icu::UnicodeSetIterator

Public Member Functions

virtual ~UObject ()
 Destructor. More...
 
virtual UClassID getDynamicClassID () const
 ICU4C "poor man's RTTI", returns a UClassID for the actual ICU class. More...
 

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, in particular a virtual destructor.

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.

Stable:
ICU 2.2

Definition at line 221 of file uobject.h.

Constructor & Destructor Documentation

virtual icu::UObject::~UObject ( )
virtual

Destructor.

Stable:
ICU 2.2

Member Function Documentation

virtual UClassID icu::UObject::getDynamicClassID ( ) const
virtual

ICU4C "poor man's RTTI", returns a UClassID for the actual ICU class.

The base class implementation returns a dummy value.

Use compiler RTTI rather than ICU's "poor man's RTTI". Since ICU 4.6, new ICU C++ class hierarchies do not implement "poor man's RTTI".

Stable:
ICU 2.2

Reimplemented in icu::UnicodeString, icu::DecimalFormat, icu::RegexMatcher, icu::UnicodeSet, icu::Calendar, icu::Transliterator, icu::SimpleDateFormat, icu::NumberFormat, icu::RuleBasedNumberFormat, icu::Collator, icu::MessageFormat, icu::TimeArrayTimeZoneRule, icu::SimpleTimeZone, icu::TimeZone, icu::Normalizer, icu::Locale, icu::TimeZoneFormat, icu::ValueRuns, icu::AnnualTimeZoneRule, icu::Formattable, icu::RuleBasedBreakIterator, icu::DateIntervalFormat, icu::ParagraphLayout, icu::DateFormatSymbols, icu::RegexPattern, icu::LEFontInstance, icu::LEGlyphStorage, icu::PluralFormat, icu::LayoutEngine, icu::LocaleRuns, icu::PluralRules, icu::ResourceBundle, icu::GregorianCalendar, icu::ChoiceFormat, icu::VTimeZone, icu::RuleBasedCollator, icu::StringSearch, icu::DateTimePatternGenerator, icu::InitialTimeZoneRule, icu::UCharCharacterIterator, icu::FontRuns, icu::RuleBasedTimeZone, icu::SelectFormat, icu::DecimalFormatSymbols, icu::DateIntervalInfo, icu::ParagraphLayout::VisualRun, icu::CompactDecimalFormat, icu::CollationElementIterator, icu::DateTimeRule, icu::UnicodeSetIterator, icu::MeasureFormat, icu::CollationKey, icu::FieldPosition, icu::TimeUnitFormat, icu::TimeZoneTransition, icu::CurrencyPluralInfo, icu::NumberingSystem, icu::MeasureUnit, icu::ParsePosition, icu::RunArray, icu::StringCharacterIterator, icu::ParagraphLayout::Line, icu::CanonicalIterator, icu::BreakIterator, icu::ForwardCharacterIterator, icu::TimeUnitAmount, icu::Measure, icu::UnicodeFunctor, icu::CurrencyAmount, icu::DateInterval, icu::TimeUnit, and icu::CurrencyUnit.


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