指向对象的指针的向量
Vectors of pointers to objects
我正在尝试使用以下指向自定义类对象的指针向量tree_node
std::vector<tree_node*> branch;
在我的代码中,我需要在以下函数中使用分支
void search_tree::tree_tries(tree_node& a){
a.visits++; //member of class tree_node
branch.push_back(&a);
if(a.nodes>0){
branch_position++;
int nodo=rand()%a.nodes;
tree_tries(a.children_nodes[nodo]);
}
else{
backtrack();//another function, enters branch[] pointers members to modify them
}
}
我的问题在于如何管理branch
向量。我需要使用 push_back
函数,因为我不知道我必须指向多少和哪些对象,并且使用 push_back
使事情变得简单。在backtrack()
结束时结束此函数后,我需要"重置"向量的指针,即我需要擦除它们,以便push_back
从向量的开头开始分配。
我不确定delete
在这里有用,我指向的对象已经是我需要以各种方式保留和使用构建的对象。我只是想知道是否有一种有效的方法可以在不触摸指向对象的情况下删除指针。
vector.clear()
将清空向量而不接触所指向的对象。就是这样:)
相关文章:
- 有没有一种"cleaner"的方法可以在指向基的指针向量中找到派生类的第一个实例?
- 如何更改唯一指针向量的可见性
- 如何在基类指针向量的元素上应用重载的多态函数
- C++:添加新结构时,结构指针向量中的所有元素都会更新
- 包含指向其他结构的指针向量的结构
- 如何将子类作为函数的参数传递给期望基类,然后将该对象传递到指向这些抽象类对象的指针向量中?
- 如何将字符串指针数组转换为字符串类型的智能指针向量?
- 初始化可变数据结构中的共享指针向量
- 指向具有 decltype 的函数的指针向量
- push_back指向指针向量的指针
- 使用指针向量(带代码)C++(以及对其使用的便利性的怀疑)时出现问题
- 我可以做些什么来改进指针向量中的此搜索?
- 指向指针排序向量的指针向量的 C++ 向量
- 初始化用户定义类的指针向量
- 函数无法识别我在C++传递节点指针向量?
- 如何声明指向类对象的指针向量?
- 指向结构的指针向量的元素具有相同的地址
- 删除指向抽象类的指针向量
- 当我返回指向结构的指针向量时出现段错误
- 用基于范围的for循环填充指针向量