このコンポジットツリーでは、フレキシブルツリーのトラバーサルのために親ノードへの参照を保持しています。 NullNodeクラスを作成し、各ノードの親をこれに初期化すると、NullNodeにはNullNodeがあるのでスタックオーバーフローが発生します。NullNodeには..があります。 .. ad infinitum NullNodeの親をnullに設定しようとしましたが、目的を破棄していると思われる親に対してヌル参照チェックを行う必要があります。 誰もこれにぶつかる?何ができたら?ヌルパターンとコンポジットパターンがうまく一緒に再生されない
ありがとうございました!
トラバース機能はどのように機能しますか?あなたは何とか止める必要がありますか?あなたの質問は有効と思われないので、いくつかのコードを投稿する必要があります。 – Nix
私は決して木を捜すのに十分遠くまで来ない。スタックオーバーフローは、NullNodeに初期化された親を含むため、NullNodeの構築中に発生します。 – krakencalamari
NullNodeには、まったく親はありません。下の2番目の答えを擬似コードで参照してください。 –