自己写的代码,过了很久自己忘了原有的逻辑了。 = =、
while(!vec_delete_clumn.empty()) // 如果容器不为空
{
iterTree = m_map_tree_info.find(vec_delete_clumn[0]);
for(int32_t i = 0; i < iterTree->second->m_vec_child_id.size(); i++) // 将vec的第一个元素的子栏目ID加入vec
{
vec_delete_clumn.push_back(iterTree->second->m_vec_child_id[i]);
}
int32_t nRetCode = deleteOneColumn(vec_delete_clumn[0]); // 每次删除vec首元素
if(nRetCode != MYSUCESS)
{
response.resp_json["code"] = MYERROR;
response.resp_json["message"] = "Defeat";
return MYERROR;
}
iterVecColumn = vec_delete_clumn.begin();
vec_delete_clumn.erase(iterVecColumn);
}

本文探讨了一种代码逻辑的复原方法,特别是在长时间后重新理解并维护复杂代码结构的技巧。通过迭代删除法,从容器中逐个取出元素进行处理,并递归地将子元素加入待处理队列,直至所有元素被处理完毕。该方法适用于多种场景,如树状数据结构的遍历和清理。
883

被折叠的 条评论
为什么被折叠?



