Tôi đang cố gắng sử dụng boost :: adapters :: được chuyển đổi bằng cách cung cấp lambda C++ 0x cho adapter.boost transformator iterator và C++ 11 lambda
Mã sau đây không biên dịch. Tôi đang sử dụng g ++ 4.6.2 với tăng 1.48.
#include <iostream>
#include <vector>
#include <boost/range/adaptors.hpp>
#include <boost/range/algorithm.hpp>
using namespace std;
namespace br = boost::range;
namespace badpt = boost::adaptors;
int main()
{
vector<int> a = {0,3,1,};
vector<int> b = {100,200,300,400};
auto my_ftor = [&b](int r)->int{return b[r];};
cout<<*br::max_element(a|badpt::transformed(my_ftor))<<endl;
}
Mọi ý tưởng về những gì tôi đang làm sai ở đây?
Bạn gặp phải lỗi gì? – ronag
http://stackoverflow.com/questions/12672372/boost-transform-iterator-and-c11-lambda có liên quan và mb dup. – ForEveR
Nhật ký lỗi được chi tiết. Vui lòng xem [link] (http://pastebin.com/grsENb1m). – Nithin