Как покрасивше без “if”?
От: Hоmunculus  
Дата: 14.01.26 12:27
Оценка: +1 :))) :)
Есть базовый класс A. Есть наследник В. И есть наследник наследника С.
Есть некая структура данный. Она парсится из файла.
Если в этой структуре все поля после парсинга заполнились — то на основе этой структуры создается класс С.
Если каких-то полей нет, но чуть больше чем совсем минимум — то создается класс В
А если совсем только базовый минимум полей заполнились из файла, то создается объекта класса А.

Ясно, что тупым «if» проверяя поля структуры можно проверять какой именно класс создавать. Но что-то некрасиво как-то. Можно как-то стильно модно молодежно, С++-но и по последним стандартам с сотней шаблонов и SFINAE разрулить создание нужного класса на основе прочитанной структуры?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.