Erro do compilador C3071
o operador 'operator' só pode ser aplicado a uma instância de uma ref class ou de um tipo value
Um operador CLR não pode ser usado em um tipo nativo. Pode ser usado o operador em uma classe ref ou um struct ref (um tipo de valor), mas não um tipo nativo, como int ou um alias para um tipo nativo, como System::Int32. Esses tipos não podem ser convertidos a partir do código C++ de uma maneira que se refira à variável nativa; portanto, o operador não pode ser usado.
Para obter mais informações, confira Operador de referência de acompanhamento.
Exemplo
O exemplo a seguir gera C3071.
// C3071.cpp
// compile with: /clr
class N {};
ref struct R {};
int main() {
N n;
%n; // C3071
R r;
R ^ r2 = %r; // OK
}