Уравнение Parsing Library С++

Я уверен, что должно быть что-то вроде этого, но я не могу найти ничего полезного здесь или Google. Я надеялся, что Boost может что-то иметь, но, увы, нет.

То, что мне нужно, - это легкая библиотека, которая может взять строку от пользователя, например "y=2x+3", и проанализировать ее, возвращая объект или функцию, которая возвращает y при задании x.

Может кто-нибудь порекомендовать что-нибудь для этого? (В худшем случае я мог написать один сам, но не было смысла изобретать колесо и все.)

Вещи, которые можно принять при необходимости;

  • Назначенные имена переменных
  • Число фиксированных переменных

Ответы

Ответ 1

MuParser - это все, что вы когда-либо могли пожелать. Вы даже можете определить пользовательские операторы, хранить и оценивать выражения в двоичной форме и т.д. Написанные на С++ привязки для C и С# (и, возможно, даже других языков).