Compiler Error C3638


The new home for Visual Studio documentation is Visual Studio 2017 Documentation on

The latest version of this topic can be found at Compiler Error C3638.

operator' : the standard boxing and unboxing conversion operators cannot be redefined

The compiler defines a conversion operator for each managed class to support implicit boxing. This operator cannot be redefined.

For more information, see Implicit Boxing.

The following sample generates C3638:

// C3638.cpp  
// compile with: /clr  
value struct V {  
   static operator V^(V);   // C3638  
int main() {  
   V myV;  
   V ^ pmyV = myV;   // operator supports implicit boxing