Древовидная структура с подклассами узлов, как применить операцию к подмножеству детей - PullRequest
0 голосов
/ 06 августа 2009

У меня есть древовидная структура

A -> B -> D -> Y
  -> C -> X
       -> X

Я хочу выполнить операцию над всеми объектами класса X или над всеми children объектами класса D (например). Я хочу вызвать запуск этой операции с любого узла в дереве (т. Е. Рекурсивно).

Например,

A.SetupDecorators();

(хотя я открыт для предложений)

Все классы наследуются от суперкласса.

Есть ли хорошее ОО решение для этого без использования отражения?

C # является предпочтительным.

1 Ответ

1 голос
/ 06 августа 2009

Попробуйте Шаблон дизайна посетителя и пример кода на C #

...