मैं बूस्ट :: एडेप्टर :: एडाप्टर में सी ++ 0x लैम्ब्डा प्रदान करके परिवर्तित करने की कोशिश कर रहा हूं।बूस्ट ट्रांसफर इटरेटर और सी ++ 11 लैम्ब्डा
निम्नलिखित कोड संकलित नहीं करता है। मैं बूस्ट 1.48 के साथ जी ++ 4.6.2 का उपयोग कर रहा हूं।
#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;
}
मैं यहां क्या गलत कर रहा हूं पर कोई विचार?
आपने क्या त्रुटि मिलता है? – ronag
http://stackoverflow.com/questions/12672372/boost-transform-iterator-and-c11-lambda संबंधित और एमबी डुप्लिकेट। – ForEveR
त्रुटि लॉग विस्तृत है। कृपया [लिंक] देखें (http://pastebin.com/grsENb1m)। – Nithin