We recommend using Visual Studio 2017

Compiler Error C3896


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

member' : improper initializer: this literal data member can only be initialized with 'nullptr'

A literal data member was initialized incorrectly. See nullptr for more information.

The following sample generates C3896:

// C3896.cpp  
// compile with: /clr /c  
ref class R{};  
value class V {  
   literal R ^ r = "test";   // C3896  
   literal R ^ r2 = nullptr;   // OK