本文整理汇总了C++中DLList::get_item_and_step方法的典型用法代码示例。如果您正苦于以下问题:C++ DLList::get_item_and_step方法的具体用法?C++ DLList::get_item_and_step怎么用?C++ DLList::get_item_and_step使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类DLList
的用法示例。
在下文中一共展示了DLList::get_item_and_step方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: merge_unique
//- merge the input list, merge_list, with the current list, making
//- sure not to add duplicate items into the current list
void DLList::merge_unique ( DLList& merge_list, int merge_list_unique )
{
// MJP Note:
// This procedure could be much more efficient if sorted lists
// are used. However, I need this procedure at this time to merge
// DLLists that already exist. These were not created as sorted
// lists (SDLLists) and it would be painful to convert them to
// SDLLists. It would be a lot easier if one could simply sort
// a DLList based on the numeric values of its items.
// Save the current index of the merge_list
int current_index = merge_list.index;
int old_size = size();
int i, j, check_index;
void* new_item = NULL;
for (i = 0; i < merge_list.size(); i++)
{
// Get the item from the merge_list and insert it into "this"
// list if it doesn't already exist there.
new_item = merge_list.get_item_and_step();
check_index = merge_list_unique ? old_size : size();
for ( j = 0; j < check_index; j++ )
{
if ( listArray[j] == new_item )
{
check_index = -1;
break;
}
}
if ( check_index != -1 )
append_link(new_item);
}
// Restore the original index of the merge_list
merge_list.index = current_index;
}