#include <Containers_T.h>
Inheritance diagram for ACE_Array< T >:
Public Types | |
typedef T | TYPE |
typedef ACE_Array_Iterator< T > | ITERATOR |
Public Member Functions | |
ACE_Array (size_t size=0, ACE_Allocator *alloc=0) | |
Dynamically create an uninitialized array. | |
ACE_Array (size_t size, const T &default_value, ACE_Allocator *alloc=0) | |
Dynamically initialize the entire array to the {default_value}. | |
ACE_Array (const ACE_Array< T > &s) | |
Copy constructor. | |
void | operator= (const ACE_Array< T > &s) |
Assignment operator. | |
bool | operator== (const ACE_Array< T > &s) const |
Equality comparison operator. | |
bool | operator!= (const ACE_Array< T > &s) const |
Inequality comparison operator. |
This class extends ACE_Array_Base, adding comparison operators.
Requirements and Performance Characteristics
Definition at line 1942 of file Containers_T.h.
typedef ACE_Array_Iterator<T> ACE_Array< T >::ITERATOR |
ACE_INLINE ACE_Array< T >::ACE_Array | ( | size_t | size = 0 , |
|
ACE_Allocator * | alloc = 0 | |||
) |
Dynamically create an uninitialized array.
Initialize an empty array of the specified size using the provided allocation strategy.
Definition at line 272 of file Containers_T.inl.
00274 : ACE_Array_Base<T> (size, alloc) 00275 { 00276 }
ACE_INLINE ACE_Array< T >::ACE_Array | ( | size_t | size, | |
const T & | default_value, | |||
ACE_Allocator * | alloc = 0 | |||
) |
Dynamically initialize the entire array to the {default_value}.
Initialize an array the given size placing the default_value in each index.
Definition at line 279 of file Containers_T.inl.
00282 : ACE_Array_Base<T> (size, default_value, alloc) 00283 { 00284 }
Copy constructor.
The copy constructor performs initialization by making an exact copy of the contents of parameter {s}, i.e., *this == s will return true.
Definition at line 289 of file Containers_T.inl.
00290 : ACE_Array_Base<T> (s) 00291 { 00292 }
Inequality comparison operator.
Compare this array with {s} for inequality such that {*this} != {s} is always the complement of the boolean return value of {*this} == {s}.
Definition at line 308 of file Containers_T.inl.
Assignment operator.
Assignment operator performs an assignment by making an exact copy of the contents of parameter {s}, i.e., *this == s will return true. Note that if the {max_size_} of {array_} is >= than {s.max_size_} we can copy it without reallocating. However, if {max_size_} is < {s.max_size_} we must delete the {array_}, reallocate a new {array_}, and then copy the contents of {s}.
Definition at line 297 of file Containers_T.inl.
References ACE_Array_Base< T >::operator=().
00298 { 00299 // Check for "self-assignment". 00300 00301 if (this != &s) 00302 this->ACE_Array_Base<T>::operator= (s); 00303 }
Equality comparison operator.
Compare this array with {s} for equality. Two arrays are equal if their {size}'s are equal and all the elements from 0 .. {size} are equal.
Definition at line 1911 of file Containers_T.cpp.
References ACE_Array_Base< T >::size().
01912 { 01913 if (this == &s) 01914 return true; 01915 else if (this->size () != s.size ()) 01916 return false; 01917 01918 const size_t len = s.size (); 01919 for (size_t slot = 0; slot < len; ++slot) 01920 if ((*this)[slot] != s[slot]) 01921 return false; 01922 01923 return true; 01924 }