Привет! Я начал работать над некоторым уже существующим кодом, который состоит из дерева элементов, каждый элемент является потомком универсального элемента, который имеет элемент данных типа.
Функция поиска возвращаетуниверсальный элемент, пользователь затем проверяет тип и может понижать до определенного типа для доступа к своей конкретной информации.
Этот код предназначен для мобильного телефона, поэтому использование большого количества динамических_кастов может быть неэффективным.
Код является новым и не задуман как камень, и поэтому его можно улучшить (я не писал его, я только что присоединился к компании и работаю над ним, поэтому не хочу полностью его разрывать).
Какие есть варианты для хорошего дизайна / использования?(Его c ++, но с использованием проверки типов и прямого преобразования c (чтобы избежать накладных расходов на dynamic_casts) кажется немного старомодным).
Есть ли какое-то преимущество в добавлении функций типа CastToXXX () в базовый класс, например?
Типы производных классов, скорее всего, будут фиксированными.