17. МАЛО НАМ ЭТОГО
Что еще можно сделать? Написать "обёртки" для всех готовых функций (которые уже есть в стандартной библиотеке (языка C++ в нашем случае)) и поместить их в отдельный файл, а затем - зарегистрировать их заранее в справочной таблице g_functions[].
Тогда программирование калькулятора Пользователем будет заключаться только в том, чтобы он писал алгоритмы вычисления математических функций, которых нет в языке, и регистрировал их в пользовательском файле.
И еще. Т.к. весь калькулятор состоит из трех коротких и, по своей внутренней сути, идентичных функций "Получи что велено, откуда прикажут", то Читатель, хотим надеяться, уже подумывает над тем, как сделать вместо трех одну, но без if’ов и case’ов и не длиннее, чем любая из трех.
Что ж, это будет еще один шаг к идеальной программе. Правда, для этого потребуется решить противоречие 7. Вот оно: ...
Впрочем, дадим возможность Читателю самому его сформулировать и получить удовольствие от самостоятельного решения.
Готовую программу (исходники и релиз) можно скачать по адресу: www.triz-ri.ru/download/ri-calculator.rar
Далее...