Golang のリフレクションを通じてルーンの種類を識別することは可能ですか?これは、Golang を使用するときに多くの開発者が遭遇する一般的な問題です。 Golang では、リフレクションは、実行時に型情報を動的に表示および変更できる強力なツールです。ただし、ルーン タイプの場合、Golang のリフレクション メカニズムはそれを直接サポートしません。ルーンタイプは、未知のタイプの値を表すために使用される特別なタイプです。したがって、従来の反射法ではルーンの種類を識別することはできません。ただし、ルーン タイプの動作をシミュレートして同様の効果を実現するために使用できるトリックと規則がいくつかあります。
goで、reflect.typeof(r)
(r
はルーン変数)を実行すると、Type int32が得られます。 。 switch と入力すると、int32 と rune を区別できません。ドキュメントには次のように書かれています:
与える前に、ここで聞きたいのですが、Go のリフレクションを通じて rune と int32 を区別する方法はありますか?
エイリアス識別子を型にバインドします。識別子 rune
は、int32
と同じ型を参照します。
ソース コード内の型の参照に使用される識別子は、実行時にリフレクションやその他の API を通じて使用できません。
以上がGolang のリフレクションを通じてルーンの種類を識別することは可能ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。