この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。
建築家
建築家
リスト
放送
茶屋
インテリジェントAI会話
.NETキャリア&テクニカルカレッジ
ちっちゃいなクズブログ
この版
利用者
Architect_Programmer_Code農業ネットワーク
»
建築家
›
プログラミング
›
.Net/C#
›
.NET/C# 汎用T共変出力とインバータインターフェース
眺める:
2933
|
答える:
0
[通信]
.NET/C# 汎用T共変出力とインバータインターフェース
[リンクをコピー]
クズども
掲載地 2023/08/03 20:35:23
|
|
|
|
要件:最近、.NETのソースコードを見てみたら、インターフェースジェネリックにoutキーワードがあるのを見つけました。例えば:
パブリックインターフェース IStringLocalizer<out T>
そして、それを研究した。
インターフェース内の一般的な型パラメータは共変量またはインバータとして宣言できます。 共分散により、インターフェースメソッドはジェネリック型パラメータで定義される返りタイプよりも導出されたリターン型を持つことを可能にします。 インバータにより、インターフェースメソッドは汎用パラメータで指定された引数タイプからの導出度を小さく抑えられます。 共変型またはインバータ型ジェネリックパラメータを持つ汎用インターフェースは「バリアント」と呼ばれます。
共 分散
: outキーワードを使って、ジェネリック型パラメータを共変として宣言します。
あべこべ
: in キーワードを使って、汎用型パラメータをインバータとして宣言します。
このVS2022のスクリーンショットは非常に詳細で、ジェネリックにどのような制限があるかを示しています(以下に示しています):
就任時
Func<in T, out TResult>
つまり、パラメータ型はT、リターン型はTResultであることを意味します。
参考:
ハイパーリンクのログインが見えます。
ハイパーリンクのログインが見えます。
先の:
.NET 6の新しいタイマーであるPeriodicTimerが使用されています
次に:
Qv2rayはWindows上でTrojan-Goサービスを接続します
関連記事
•
.NET/C#はAzure Translatorのテキスト翻訳インターフェースサービスを呼びます
•
Charles Proxy Scraping HTTPS パケットチュートリアル
•
ASP.NET コア(33)ファイル出力ダウンロード(中国語ファイル名)
•
ASP.NET Core(32)はKeyedServicesの鍵サービスの注入に依存しています
•
フロントエンドの監視と追跡のためのnavigator.sendBeacon()メソッド
•
【株式】テンセントの市場データインターフェース
•
Alibaba Cloud OpenAPI APIを呼び出してサーバー使用状況を調べてください
•
.NET/C#でHUAWEI CLOUD OCR事業ライセンス識別インターフェースを呼び出すために
•
.NET/C# でBaiduユニバーサル翻訳API APIを呼び出します
•
ASP.NET コア(26) インターフェース(最小限のAPI) 最小限のAPI
閲覧したセクション
Microsoft SQL Server
PowerShell
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。
Mail To:help@itsvse.com