Re[48]: Тормознутость и кривость linq
От: alex_public  
Дата: 30.03.16 17:51
Оценка: +1
Здравствуйте, Ikemefula, Вы писали:

_>>Ты говоришь о чём-то вроде такого

_>>
_>>auto F() {return select(users.id, users.name).from(users).where(users.total>total).as(rich_users);}

_>>auto q=F();
_>>for(const auto& row: db(select(orders.user).from(orders.join(q).on(orders.user==q.id)).where(orders.year>year))){
_>>    //...
_>>}
_>>

_>>кода?
I>Покажи, как это делать в с++. Намекать "илиментарщина" не надо.

Приблизительно так:
#include <sqlpp11/sqlpp11.h>


I>В C# это работает через ExpresstionTree. Чем ты заменишь этот механизм в С++ ?


Вообще то построение деревьев выражений в C++ возможно уже давным давно. Более того, насколько я помню Евгений уже даже когда-то показывал тебе элементарные примеры подобного. Конечно оно выглядит совсем не изящно и лаконично, так что авторам библиотек на базе данной техники приходится поднапрячься. Зато у пользователей таких библиотек никаких проблем нет — удобство не меньше чем у linq вариантов (ну а эффективность очевидно лучше по определению).
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.