php エディタ Xigua が紹介します: Go 言語では、カスタム エラー タイプを使用すると、「エラー。カスタム エラー タイプを解凍できません」という質問に遭遇することがあります。この問題は通常、カスタム エラー タイプを他の関数またはメソッドに渡そうとしたときに発生します。これは難しい問題のように思えるかもしれませんが、実際にはいくつかの方法があります。この記事では、この問題の原因を調査し、この問題の解決に役立つ解決策を提供します。
go stdlib パッケージのエラーを使用して、errors.as
を使用してカスタム エラー タイプを解凍しようとしていますが、チェックが失敗しているようです。根本的なエラーを抽出できません。
再現可能な最小限の例を抽出しました:
リーリーhttps://go.dev/play/p/i7bnk4-rdib - go プレイグラウンドの例。起動すると、予期される「ラップされていないラッピング」の代わりに「エラー: ラッピング」が出力されます。
errors.as
ドキュメントの例は機能しますが、何が間違っているのか理解できないようです。*myerror
を errors.as
に渡します。これは正しいようです (myerror
を渡すとパニックが発生するため、target はゼロ以外のポインタ
でなければなりませんが、これは想定どおりです)。 代わりに:
リーリー ###する:### リーリー以上が進む - エラー。カスタム エラー タイプを解凍できませんの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。