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...
stl_style_iterator.svg QCheckBox QComboBox QCoreApplication D F G H I J K L M O P Q R S T U V W X CODE_OF_CONDUCT.md CONTRIBUTING.md Comparison_Table.md Grammar_Tips.md LICENSE README.md Template.md completeness_tracking.md xiaofeiwx.png Breadcrumbs QtDocumentCN /Src /C /Conta...
; 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_...
std::list< int> List; std::list< int>::iterator itList; for( itList = List.begin(); itList != List.end(); ) { if( WillDelete( *itList) ) { itList = List.erase( itList); } else itList++; } 今天同事在设计erase接口的时候,由于考虑到了遍历删除,所以返回下一个节点出了点问题。
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_set_remove(structcstl_set* pSet,void* key);constvoid*cstl_set_find(structcstl_set* pSet,constvoid* key); cstl_errorcstl_set_delete(structcstl_set* pSet);structcstl_iterator*cstl_set_new_iterator(structcstl_set* pSet);voidcstl_set_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_...