gpt4 book ai didi

c++ - 错误 : no matching constructor for initialization of 'set'

转载 作者:搜寻专家 更新时间:2023-10-31 00:09:15 46 4
gpt4 key购买 nike

在 C++ 中,我包含了 set 库:

#include <set>

我想创建一个集合,其中的元素数量与另一个集合的元素数量相等。所以,我尝试了这个:

set<int> ret((int)ring.size());

但是,我收到了这个错误:

error: no matching constructor for initialization of 'set<int>'

知道如何从声明中指定集合的​​大小吗?

最佳答案

Any idea how can I specify the size of the set from its declaration?

您要么将旧集复制到新集,从而填充集,这会导致其大小相应增加,要么向其插入唯一值,直到达到所需大小.

您始终可以检查 ref 中可用的构造函数.


想一想:假设存在一个类似于您描述的构造函数。它必须默认初始化集合的值。但这意味着所有值都是相同的。这应该会产生一个大小为 1 的集合。

关于c++ - 错误 : no matching constructor for initialization of 'set<int>' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44202630/

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