Information
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

Compiler Error C3531

'symbol': a symbol whose type contains 'auto' must have an initializer

The specified variable does not have an initializer expression.

To correct this error

  • Specify an initializer expression, such as a simple assignment that uses equal-sign syntax, when you declare the variable.

The following example yields C3531 because variables x1, y1, y2, y3, and z2 are not initialized.

// C3531.cpp
// Compile with /Zc:auto
int main()
{
   auto x1;                  // C3531
   auto y1, y2, y3;          // C3531
   auto z1 = 1, z2, z3 = -1; // C3531
   return 0;
}
Show:
© 2014 Microsoft