相关疑难解决方法(0)

如何将copy_if从map映射到vector?

我想将与谓词(等于整数)匹配的值从a复制map<string,int>到a vector<int>.

这是我试过的:

#include <map>
#include <vector>
#include <algorithm>

int main()
{
    std::vector< int > v;
    std::map< std::string, int > m;

    m[ "1" ] = 1;
    m[ "2" ] = 2;
    m[ "3" ] = 3;
    m[ "4" ] = 4;
    m[ "5" ] = 5;

    std::copy_if( m.begin(), m.end(), v.begin(),
                  [] ( const std::pair< std::string,int > &it )
                  {
                    return ( 0 == ( it.second % 2 ) );
                  }
                  );
}
Run Code Online (Sandbox Code Playgroud)

来自g ++ 4.6.1的错误消息是:

error: cannot …
Run Code Online (Sandbox Code Playgroud)

c++ copy c++11

9
推荐指数
3
解决办法
3656
查看次数

标签 统计

c++ ×1

c++11 ×1

copy ×1