Здравствуйте, Анатолий Широков, Вы писали:
АШ>Я уже ответил, массив различных лямбда выражений не существует в С++, они ничем не связаны. Хочешь массив, объявляй массив указателей на функцию и приводи к ним лямбда выражения без захвата.
Причем тут чего я хочу. Я просто сказал, что это костыли, а не типы данных. Тем более не "first class citizen".
То что в C++ это сделано через жопу, я не виноват. А вы просто констатируете факт что для этих костылей нужны еще костыли в виде указателей на функцию (тут одельная песня).
Для "first class citizen" int и double я могу написать такое
struct A {
enum { N=3 };
int x[N]; double y[N];
virtual void fn(int x) {}
virtual void fn(double x) {}
};
А для лямд не могу. Поэтому этот тип данных убог и ущербен и никак не "first class citizen" т.к на него есть куча ограничений.