Скажем, у нас есть базовый класс green
и такое иерархическое дерево:

У нас есть список greenList
, заполненный всеми классами red
, blue
и т. д. выглядит как green
.Мы не создаем этот список, нам дают его заполненный данными.Теперь мы хотим создать списки для классов red
, yellow
и т. Д.У нас есть заголовки для классов red
и т. Д., Мы не хотим иметь getType
внутри класса green
.
Как отсортировать этот список greenList
в списки типа redList
, yellowList
и т.д. в C ++ 03 (с использованием boost)?