構造に作用する目的でリンクされた構造をトラバースする場合 (つまり、簡単な例として単純なリンク リストにノードを挿入する場合)、構造にダブル ポインターをプッシュすることによって最適なアルゴリズムを取得します。単一の参照が使用されている場合、null ルートおよび/またはテール挿入の 1 つ以上の特殊なケースを記述する必要があります。
node_type **dp = &root;
while(*dp && /insertion point not reached/)
dp=&(*dp)->next;
ループから抜け出すと、*dp がリストへの挿入ポイントになります。オブジェクトのリンクへの参照を保持しています。この参照は、ルート、構造体の最後にある null オブジェクト、またはその他のノードに対するものである可能性があります。構造がより複雑になるにつれて、特殊なケースの必要性が指数関数的に増加する傾向があるため、二重参照の必要性がより顕著になります。
Visual Basic で二重参照を実装するにはどうすればよいですか?
注: リンクされたリストのビットは例としてのみ機能します... 私は知っています: その単純な問題を回避する方法はたくさんあります。