Я столкнулся со следующей загадкой в C++, для которой не могу найти решение. У меня есть абстрактный класс Model наверху моей иерархии наследования, который мне нужен, чтобы содержать переменную-член, представляющую параметры модели. Он реализует целый набор шаблонной логики и используется для полиморфизма. Тип этой переменной зависит от большинства производных классов, реализующих конкретные модели, например. HullWhite должен наследовать член HullWhiteParams от Model.
Между этими двумя существует несколько уровней наследования. Если бы был только один уровень, эту проблему можно было бы решить с помощью CRTP. Я также не могу использовать шаблоны промежуточных классов, поскольку мне нужны указатели на них для полиморфизма. Есть ли способ добиться этого? По сути, я ищу шаблон, подобный CRTP, который передает информацию о конечных классах обратно на вершину иерархии.
Подробнее здесь: https://stackoverflow.com/questions/784 ... irect-desc
Установка типа переменной-члена в базовом классе на основе непрямого потомка? ⇐ C++
Программы на C++. Форум разработчиков
1716018628
Anonymous
Я столкнулся со следующей загадкой в C++, для которой не могу найти решение. У меня есть абстрактный класс Model наверху моей иерархии наследования, который мне нужен, чтобы содержать переменную-член, представляющую параметры модели. Он реализует целый набор шаблонной логики и используется для полиморфизма. Тип этой переменной зависит от большинства производных классов, реализующих конкретные модели, например. HullWhite должен наследовать член HullWhiteParams от Model.
Между этими двумя существует несколько уровней наследования. Если бы был только один уровень, эту проблему можно было бы решить с помощью CRTP. Я также не могу использовать шаблоны промежуточных классов, поскольку мне нужны указатели на них для полиморфизма. Есть ли способ добиться этого? По сути, я ищу шаблон, подобный CRTP, который передает информацию о конечных классах обратно на вершину иерархии.
Подробнее здесь: [url]https://stackoverflow.com/questions/78499016/setting-the-type-of-a-member-variable-in-a-base-class-based-on-a-non-direct-desc[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия