我正试图去掌握C++中的lambdas。在for_each lambda中调用对象函数?
这里是我的代码(简化理解变量):
template <typename Container>
void do_function(const Container& c, const item &w){
complex<double> a(w.x1, w.y1);
complex<double> b(w.x3, w.y3);
for_each(begin(c), end(c), [] {
p->inner_function(a, b);
});
}
我知道p表明什么,它只是在那里说明我想做的事情。基本上,我想在任何一种容器(列表/矢量等)上使用这个函数,该容器包含一个名为Animal的抽象类的指针实例。这些实例都有一个'inner_function(复杂,复杂)'的实现。
我想打电话给每个这些该功能在使用lambda表达式在C++ 11的for_each循环..
的在线的例子都有点混乱,但。
你在做什么? – 0x499602D2
对于初学者来说,'p'没有被声明,显然没有指定'捕捉模式',所以它不知道a和b是什么。 –