Установка типа переменной-члена в базовом классе на основе непрямого потомка?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Установка типа переменной-члена в базовом классе на основе непрямого потомка?

Сообщение Anonymous »

Я столкнулся со следующей загадкой в ​​C++, для которой не могу найти решение. У меня есть абстрактный класс Model наверху моей иерархии наследования, который мне нужен, чтобы содержать переменную-член, представляющую параметры модели. Он реализует целый набор шаблонной логики и используется для полиморфизма. Тип этой переменной зависит от большинства производных классов, реализующих конкретные модели, например. HullWhite должен наследовать член HullWhiteParams от Model.
Между этими двумя существует несколько уровней наследования. Если бы был только один уровень, эту проблему можно было бы решить с помощью CRTP. Я также не могу использовать шаблоны промежуточных классов, поскольку мне нужны указатели на них для полиморфизма. Есть ли способ добиться этого? По сути, я ищу шаблон, подобный CRTP, который передает информацию о конечных классах обратно на вершину иерархии.

Подробнее здесь: https://stackoverflow.com/questions/784 ... irect-desc
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»