如何清除对列表
How do I clear list of pair
我想从每个测试用例的主函数中清除adj列表。
class Graph
{
long long int V; // No. of vertices
list< pair<long long int,long long int> > *adj;
public:
Graph(long long int V); // Constructor
//clear previous values
void clearList();
};
void Graph::clearList()
{
//WHAT SHOULD I WRITE HERE
}
好吧,由于它是指向列表的指针,因此您应该首先检查它是否存在。 在清除对象后,您需要决定是否要保留它指向的对象,但这会清除它:
void Graph::clearList()
{
if ( adj ) {
adj->clear();
}
}
编辑:几个旁注取决于你在做什么......如果顶点成员变量 V 的数量是列表中的内容,只需使用 adj->size(( 即可。 您还应考虑不使用指向列表的指针,而直接使用列表,以避免在 Graph 中手动管理 adj。 最后,您的构造函数意味着您正在预先声明顶点的数量,也许另一个容器更合适,例如向量?
相关文章:
- Pybind11:将元组列表从Python传递到C++
- 从链接列表c++中删除一个项目
- 如何(从固定列表中)选择一个数字序列,该序列将与目标数字相加
- C++如何通过用户输入删除列表元素
- 读取文件的最后一行并输入到链接列表时出错
- 复制列表初始化的隐式转换的等级是多少
- LNK2038、MSVS2017 MAGMA的原因列表
- 不能在初始值设定项列表中将非常量表达式从类型 'int' 缩小到'unsigned long long'
- 没有为自己的结构调用列表推回方法
- 使用简单类型列表实现的指数编译时间.为什么
- 一对向量构造函数:初始值设定项列表与显式构造
- 标准是否使用多余的大括号(例如 T{{{10}}})定义列表初始化?
- 清除 C++ 中的指针的 STL 列表
- 附加并清除列表C
- 如何清除对列表
- 清除临时列表而不清除我将其分配到的位置
- 清除Linux内核链接列表
- 清除 std::动态对象列表的最快方法是什么?
- 在嵌套的for循环中清除列表中的值
- 挂在提升相邻列表上清除