英語で読む

次の方法で共有


コンパイラ エラー CS0447

型引数には属性を使用できません。型パラメーターでのみ使用できます

このエラーは、呼び出しステートメント内の型引数に属性を適用するときに発生します。 次のように、クラスまたはメソッド宣言ステートメントで型パラメーターに属性を適用できます。

class C<[some attribute] T> {…}

次のコード行ではこのエラーが生成されます。 前のコード行に定義されているクラス Cに、 MyStaticMethodという静的メソッドがあることを前提にしています。

C<[some attribute] T>.MyStaticMethod();

次のコードではエラー CS0447 が生成されます。

// CS0447.cs
using System;

namespace Test41
{
    public interface I<A>
    {
        void Meth<B>();
    }
    public class B : I<int>
    {
        void I<[Test] int>.Meth<X>() { }  // CS0447
    }
}

注意

このコンパイラ エラーは、Roslyn では使用されなくなりました。