Я построил структуру дерева и имел несколько проблем с ним, которые были решены в вопросе Traversing a Tree Structureобход структуры дерева и действия
Я хотел бы реализовать метод с действием в классе TreeNode. Мне трудно понять, как это сделать и реализовать. Что у меня есть до сих пор:
internal void Traverse(Action<TreeNode<T>> action)
{
action(TreeNode<T>);
foreach (var child in this.children)
child.Traverse(action);
}
Любое объяснение и помощь были бы весьма полезны.
Я получаю ошибки:
Ошибка 667 TreeNode»является„тип“, но используется как„переменная“
Ошибка 668„System.Collections.Generic.KeyValuePair>“не содержит определение «Траверс» и метод расширения «Траверс», принимающий первый аргумент типа «System.Collections.Generic.KeyValuePair>» (вам не хватает директивы использования или ссылки на сборку?)
Спасибо. Это сработало, но я не получил часть действия (этой). Да, я понимаю значения части словарной ошибки. Спасибо. – PBrenek
Я предположил, что Траверс является членом класса TreeNode. –
Спасибо. Итак, вы предлагаете мне взять метод Traverse из класса TreeNode и поместить его в класс Tree? – PBrenek