ポインターへのポインター: 実用的なアプリケーション
int などのポインターへのポインターは、プログラミングにおいて独自の機能を提供します。変数の内容だけでなく変数の参照を変更できるようになります。この概念は抽象的に見えるかもしれませんが、特定のシナリオで実際に応用できます。
関数パラメーターのコンテキストでは、ポインターへのポインターが優れています。変数のターゲットを変更する必要がある関数は、構造体ポインターを使用して、関数が変数が参照するオブジェクトを調整できるようにします。たとえば、Go コンパイラーの内部 (cmd/compile/internal/gc/racewalk.go) では、特定の関数が Node パラメーターを受け入れます。この設計により、関数は変数が指すオブジェクトを変更できる可能性があります。
関数パラメーター以外にも、複数の戻り値を持たない言語では、ポインターへのポインターも利用されます。 **NSError ポインタを Objective-C メソッドの最終パラメータとして使用することにより、関数はオプションでエラー状態を返すことができます。
さらに例を示すために、HTML ページ上で動作する関数を考えてみましょう。解析されていません (github.com/andybalholm/redwood/prune.go)。 **html.Node ポインターを利用すると、関数は既存のツリーを再利用するか、オンデマンドでページを解析できるようになり、効率化の機会が生まれます。
以上がコード内でポインターからポインターを使用する場合とその理由は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。