Отправка произвольных данных с помощью нескольких функций - программирование

Отправка произвольных данных с помощью нескольких функций

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

Сама система компонуется в другой объект, который может реагировать на раздражители, и как машина состояния, так и сами состояния могут также иметь стимулы, и они будут передаваться от внешнего к внутреннему уровню через вызовы функций. Проблема состоит в том, что стимулы должны нести произвольные данные на эти разные уровни, и я не могу придумать простой способ ее устранения.

Я думал, что это возможно с помощью dynamic_cast, но мне было интересно, может ли быть лучший способ.

4b9b3361

Ответ 1

boost:: любой может быть вам полезен в зависимости от того, что вы делаете.

Ответ 2

Если это действительно произвольно, dynamic_cast - ваш лучший выбор. Если вы намерены использовать все части конечного автомата для работы с конечным числом методов данных, было бы более элегантно иметь все классы данных, которые вы передаете на конечный автомат, наследуемые от чистого виртуального класса, который описывает эти методы, затем выполните все через этот класс.