Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
'type': um argumento de atributo não pode usar parâmetros de tipo
Observações
Um parâmetro de tipo genérico é resolvido em runtime. No entanto, um parâmetro de atributo deve ser resolvido em tempo de compilação. Portanto, você não pode usar um parâmetro de tipo genérico como um argumento para um atributo.
Exemplo
O exemplo a seguir gera 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;
};