【问题标题】:How do I declare a Multi-set that contains arrays of a certain size?如何声明包含特定大小数组的多集?
【发布时间】:2021-09-28 23:22:33
【问题描述】:

我对 C++ 比较陌生。我正在尝试声明一个包含大小为 2 的数组的多重集。我尝试了以下方法,但我认为它没有达到我想要的效果:

multiset<int> nameOfSet[2];

谁能告诉我这条线是做什么的?如果这是错误的,请向我解释原因并告诉我如何正确执行。提前致谢。

【问题讨论】:

  • 该行声明了一个multiset&lt;int&gt; 的2 元素数组。你可能想要multiset&lt;std::array&lt;int, 2&gt; &gt; nameOfSet;

标签: c++ arrays set multiset


【解决方案1】:
multiset<int> nameOfSet[2];

谁能告诉我这条线是做什么的?

它声明了一个变量,它是一个由两个多组 int 组成的数组。

如何声明一个包含一定大小数组的 Multi-set?

你不能。数组不能是任何标准容器的元素。

但是,数组可以是类的成员,类可以是容器的元素。这种数组包装器有一个标准模板:std::array。所以,你可以这样做:

std::multiset<std::array<int, 2>> nameOfSet;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-30
    • 2020-03-06
    • 2013-09-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多