如何在multiset中打印值?

时间:2011-07-17 15:07:24

标签: c++ data-structures multiset

如何访问存储在数据结构multiset,C ++中的值?

for (int i = 0; i < mlt.size; i++)
{
cout << mlt[i];
}

4 个答案:

答案 0 :(得分:4)

请看这个例子:http://www.cplusplus.com/reference/stl/multiset/begin/

基本上,您可以像通过任何其他stl容器一样遍历multiset。

答案 1 :(得分:4)

如果T是多集中包含的类型,

for (std::multiset<T>::const_iterator i(mlt.begin()), end(mlt.end());
     i != end;
     ++i)
    std::cout << *i << "\n";

答案 2 :(得分:2)

你应该(通常)通过写一个循环来这样做。您通常应该使用预先编写的算法,例如std::copy

std::copy(mlt.begin(), mlt.end(), 
          std::ostream_iterator<T>(std::cout, "\n"));

根据具体情况,有很多变化非常有用,例如使用我在previous answer中发布的infix_ostream_iterator。这主要用于您希望将列表中的项目分开,以获取(例如)1,2,3,4,5而不是1,2,3,4,5,将生成的ostream_iterator

答案 3 :(得分:1)

auto for C ++ 11很方便。

   for(auto t : mlt){
        cout << t << endl;
    }