С++ переменные

Компьютеры программирование программы C++

Суть в том, что понадобилось в консольном приложении, написанном на C++, в переменную типа string записывать математическое уравнение. А потом меняя значение переменных в этом уравнении выводить значение функции, говоря простым языком, протабулировать функцию.
Если выражение заранее известно...

float func(float x)
{
return(pow(x,2)-2*x-10);
}

То проблем не возникает. Но вот как это можно проделать, если выражение записано в переменную string? Потратил на поиски ответа на данный вопрос всю ночь, но ответа не нашёл. Прошу помощи мудрецов :))

Примечание:
С этой проблемой вроде разобрался. Поизучал статьи с математическими парсерами. Всё понятно, за исключением одной детали: Парсер берёт значения по мере их поступления, тобеж, мы вводим что-то с клавиатуры и он сразу из потока всё анализирует. А нельзя ли как-то "скормить" ему данные. То есть, сначала записать выражение в переменную а потом по одному символу в потом выдавать?
P.S. Не судите строго, программирую не так давно, а самому со всем сразу разобраться сложно. Буду очень признателен за адекватные и информативные ответы :)
Ответы:
Учись гуглить, по разбору выражений тысячи примеров, статей и даже монографий не говоря уже о готовых наборах функций...
От себя добавлю, что это гораздо проще делается в лиспе
Записывать функцию в виде текста в переменную string ничего не даст. С функцией можно делать только две операции: вызывать ее и брать ее адрес. Указатель, полученный взятием адреса функции, можно затем использовать для вызова этой функции.
Вам нужен интерпретатор, который сможет вычислять значение выражения в переменной типа string


11 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.