In my first attempt design of the iterator, the first call to the underlying interface pointer'sNext()member function was made during construction of theIEnumIterator. This meant that if code returned anIEnumIteratorto a client who wished to change the number of items cached, the cache has a...
; cstl_errorcstl_array_delete(structcstl_array* pArray);structcstl_iterator*cstl_array_new_iterator(structcstl_array* pArray);voidcstl_array_delete_iterator(structcstl_iterator* pItr); deque structcstl_deque{structcstl_object**pElements;size_tcapacity;size_thead;size_ttail;size_tcount; cstl_...
cstl_errorcstl_map_remove(structcstl_map* pMap,constvoid* key);constvoid*cstl_map_find(structcstl_map* pMap,constvoid* key); cstl_errorcstl_map_delete(structcstl_map* pMap);structcstl_iterator*cstl_map_new_iterator(structcstl_map* pMap);voidcstl_map_delete_iterator(structcstl_iterator* pItr...
; cstl_errorcstl_array_delete(structcstl_array* pArray);structcstl_iterator*cstl_array_new_iterator(structcstl_array* pArray);voidcstl_array_delete_iterator(structcstl_iterator* pItr); deque structcstl_deque{structcstl_object**pElements;size_tcapacity;size_thead;size_ttail;size_tcount; cstl_...