gpt4 book ai didi

c++ - C++比较 vector 和列表

转载 作者:行者123 更新时间:2023-12-02 11:08:07 27 4
gpt4 key购买 nike

我有这个错误:

no match for 'operator*' (operand type is 'std::__cxx11::list') C/C++ Problem



因为这:
if (vetorTop[i] == *adj[u]){...

它们被初始化:
adj = new list <int>[N];
vector <int> vetorTop;

任何提示或帮助,不胜感激,在此先感谢。

最佳答案

我认为您误解了必须使用列表的方式。以下代码没有按照您的想法做:

adj = new list <int>[N];

这将分配一个 N数组为空 std::list<int>

另一方面,下面的代码创建 N元素的链接列表:
std::list<int> adj{N};

然后,您可以像这样比较两个容器:
bool isEqual = std::equal(std::begin(vetorTop), std::end(vetorTop), std::begin(adj), std::end(adj));

请注意,如果这两个容器是 std::vector,则将进行如下比较:
bool isEqual = vetorTop == adj;

关于c++ - C++比较 vector 和列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42909726/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com