다음을 통해 공유


컴파일러 오류 C2179

'type': 특성 인수는 형식 매개 변수를 사용할 수 없습니다.

제네릭 형식 매개 변수는 런타임에 확인됩니다. 그러나 특성 매개 변수는 컴파일 시간에 확인해야 합니다. 따라서 제네릭 형식 매개 변수를 특성의 인수로 사용할 수 없습니다.

예시

다음 샘플에서는 C2179를 생성합니다.

// C2179.cpp
// compile with: /clr
using namespace System;

public ref struct Attr : Attribute {
   Attr(Type ^ a) {
      x = a;
   }

   Type ^ x;
};

ref struct G {};

generic<typename T>
public ref class Z {
public:
   Type ^ d;
   [Attr(T::typeid)]   // C2179
   // try the following line instead
   // [Attr(G::typeid)]
   T t;
};