清除临时列表而不清除我将其分配到的位置
Clear temporary list without clearing where I assign it to
>我有一个"Slate",它本质上是当前屏幕,在该屏幕中是容纳最大 12 个大小的"项目"的"页面",因为这就是屏幕上适合的全部内容,所以我试图检查,一旦它达到 12 个项目,创建一个新页面,但下面列出的代码只是在第 1 页或第 2 页中没有留下任何项目
int pageItems = 0;
std::list<item*> tempList;
page* temp = new page;
for (std::list<item*>::iterator iter = items.begin(); iter != items.end(); ++iter)
{
tempList.push_back((*iter));
if (pageItems >= 13) {
page_Count++;
temp->items = tempList;
pages.push_back(temp);
tempList.clear();
temp->items.clear();
pageItems = 0;
}
pageItems++;
}
页面是一个包含 std::list 的类,但应该只处理 12,然后将使用下一个数量创建一个新页面,如果它超过 12,则为新类slate 是保存 std::list 和 std::list 的类,项目一只是为了更容易创建一个类,因为最初它没有页面,现在我只是根据给 slate 的数量将"项目"输入到"页面"中
我认为这是你的问题:
temp->items.clear();
将页面添加到页面列表后,您似乎清除了该页面
相关文章:
- 将数组的地址分配给变量并删除
- vector.resize()中的分配错误
- 如果C++类在类方法中具有动态分配,但没有构造函数/析构函数或任何非静态成员,那么它仍然是POD类型吗
- Win32编译器选项和内存分配
- 函数中堆分配的效果与缺少堆分配的情况
- 使用动态分配的数组会导致代码分析发出虚假的C6386缓冲区溢出警告
- 多个文件的内存分配错误"在抛出 'std :: bad_alloc' what (): std :: bad_alloc 的实例后终止调用" [C++]
- 清除在 main() 中分配的堆栈内存?
- 清除按矢量分配的内存
- thread_local std::list 是否会在呼叫清除时放弃分配的内存
- 如何使用删除 [] 运算符清除动态分配的内存?(无法使用常规删除语法清除)
- 清除临时列表而不清除我将其分配到的位置
- delete命令会清除用new分配的内存吗
- 清除并重新填充 std::vector<std::vector<T>>导致分配问题
- 如何清除堆上分配的未使用数组的整个内存
- QList clear函数调用是否清除存储在QList中的动态分配对象的内存?
- C++ 清除指向动态分配对象的指针向量会导致异常
- 如何清除为指针正确指向的数组分配的内存C++?
- 删除动态分配的向量是否清除其内容
- 清除c++中堆栈中分配的内存