Здравствуйте, korzhik, Вы писали:
K>Здравствуйте, PoM-PoM 40mm, Вы писали:
PP4>>Посмотрел как в Loki сделаны генераторы иерархий и задался вопросом: а зачем лишняя ступень(слева), почему нельзя сделать наследование напрямую от юнита:
K>PP4>>template <class TList, template <class> class Unit>
PP4>> class GenScatterHierarchy;
PP4>> template <class T1, class T2, template <class> class Unit>
PP4>> class GenScatterHierarchy<Typelist<T1, T2>, Unit>
PP4>> : public Unit<T1>, // (1)
PP4>>
public GenScatterHierarchy<T2, Unit>
K>
K>Задача GenScatterHierarchy сгенерить класс который наследуется от всех классов, полученных инстанцированием Unit'а
K>всеми типами из типа списков.
K>А у тебя что получается?
K>Если я правильно понял, получается что в (1) Unit может инстанцироваться списком типов, что совсем не то что нам требуется.
Почему? Я думал что в списке типов считается, что голова сама не является списком типов. Или это не так?
На мой взгляд если ни один Head с списке типов не является списком типов, то получившийся класс является потомком от инстанцирований шаблона Unit от всех типов в списке. Или я тут не прав?