C# がジェネリック属性を制限する理由: 詳細
C# 開発者は、汎用属性を作成できないという制限に遭遇することがよくあります。この記事では、この設計選択の背後にある理由を説明します。
汎用属性を定義しようとすると、コンパイラ エラーが発生します。これは、共通言語インフラストラクチャ (CLI) ではなく、C# 言語に固有の制限です。
この制約を説明する決定的な文書は不足していますが、調査によると、この決定は主に C# 言語とそのコンパイラの両方で不必要な複雑さを避けるためであったことが示唆されています。 汎用属性の実際の使用例が限られていると認識されていたことが、この決定をさらに裏付けました。 付加価値は複雑さの増加を正当化するものではありません。
元 C# 言語設計者 Eric Lippert の洞察はこれを裏付けています。この制限は主に複雑さを最小限に抑えるためのものであり、基盤となるインフラストラクチャの根本的な制限ではありません。
以上がC# でジェネリック属性を作成できないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。