我正在构建一个iOS应用程序。
我正在做的事情如下所述 -
我需要的是堆栈操作应该像 - C - >那样执行。甲
为此,我必须从堆栈中弹出B。如何从堆栈弹出B。
答案 0 :(得分:4)
如果您的目的是始终返回堆栈中的第一个视图控制器,则可以使用
[self.navigationController popToRootViewControllerAnimated:YES];
如果您想弹出X
个视图控制器,请从SO中查看以下答案:How do I pop two views at once from a navigation controller?
答案 1 :(得分:0)
使用以下代码执行此操作
for (auto outerIter = myList.begin(); outerIter != myList.end(); outerIter++)
{
std::list<my_struct> &listEntry = *outerIter;
for (auto innerIter = listEntry.begin(); innerIter != listEntry.end(); innerIter++)
{
// some calculations
}
if (criterion)
{
// you need point the next element, in roder to insert after the current outerIter position.
MyList::iterator tmp = outerIter;
std::list<my_struct> list_to_insert; // 1
list_to_insert.splice(list_to_insert.begin(), listEntry, listEntry.begin(), listEntry.end()); // 2
myList.insert(++tmp, list_to_insert); // 3
}
}