- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
void SomeMethod(void) {
const int a, b;
// ...
struct {
const int a, &b;
lambda(const int a, const int &b) : a(a), b(b) {}
// весь огород ради operator()
const int operator()(const int x) { return SomeCalculation(a, b, x); }
} lambda(a, b);
//...
someContainer.SomeGroupOperation(lambda);
a++; b++;
someContainer.SomeGroupOperation(lambda);
// ...
};
Быстрее бы мы перевели все проекты в нашем отделе под новый стандарт С++0х, а то огородная реализация лямбд по всему проекту уже надоела.