Я только что унаследовал (гм) проект реального времени QNX, который использует механизм операторов void * / downcasting / case для обработки сообщений.Я бы предпочел вместо этого переключиться на абстрактный базовый класс с чисто виртуальными функциями, но мне интересно, было ли оригинальное решение сделано таким образом по соображениям скорости?похоже, он был изначально написан на C и перенесен в какой-то момент на C ++, поэтому я предполагаю, что это может быть причиной этого.
Любые мысли по этому поводу приветствуются.Я не хочу делать код красивым, безопасным и аккуратным, а затем приводить к сбою по соображениям производительности во время тестирования.