Библиотека функторов C++ для вычисления математических/арифметических выражений

Кто-нибудь знает библиотеку что позволяет вам делать что-то подобное?

std::transform(vecA.begin(), vecA.end(), 
               vecB.begin(), 
               vecOutput.begin(), 
               // run-time specified expression 
               magic_functor<float>("exp(a/(b+3))") 
);

Где magic_functor — это функтор, предоставленный библиотекой-, а a и b повторяются через vecA и vecB.

Я мог бы сам что-нибудь придумать (и получил бы от этого массу удовольствия), но, наверное, лучше не изобретать велосипед (а то меня начальник убьет). Потратил некоторое время на поиск в Интернете, но не смог найти ничего подходящего.

Он должен быть гибким и быстрым, поэтому функторный подход анализирует строку только один раз (, например. создает стек выполнения внутри конструкции ), было бы идеально, но я открыт для других решений.

12
задан smocking 11 April 2012 в 21:10
поделиться