【问题标题】:C++ STL list sizeC++ STL 列表大小
【发布时间】:2014-04-05 11:46:33
【问题描述】:

我有一些问题/我不明白某些东西,这导致了这个问题:)

这里有一些代码:

list<Walec>lista;

remove_copy_if(vec.begin(),vec.end(), lista.begin(),Warunek_na_Wysokosc(sredniasu));
 copy(lista.begin(),lista.end(),ostream_iterator<Walec>(cout, " \n"));

这是 Warunek_Na_Wysokosc 的定义:

struct Warunek_na_Wysokosc
{
    double wys;

   Warunek_na_Wysokosc(const double& h_): wys(h_){ }

    bool operator()(const Walec& w)
    {
        return w.h >= wys;
    }

};

问题是,如果我让它这样,我会遇到一些内存问题,我的意思是主函数中的指令,如果我设置列表大小,则没有。但我希望它自动设置,我应该使用一些插入功能吗?如何纠正这个? :) 谢谢!

【问题讨论】:

  • 究竟什么是“一些内存问题”?您的代码使用非英语标识符这一事实也不完全有助于理解问题:(

标签: c++ list stl


【解决方案1】:

我想你想在这里使用inserter

remove_copy_if(vec.begin(),vec.end(),
               std::inserter(lista,lista.end()),
               Warunek_na_Wysokosc(sredniasu));

【讨论】:

    猜你喜欢
    • 2015-09-30
    • 1970-01-01
    • 2016-02-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-17
    • 2014-12-21
    • 2011-01-19
    相关资源
    最近更新 更多