Share via


Error del compilador C3538

en una lista de declaradores, "auto" siempre debe deducirse como el mismo tipo

Todas las variables declaradas en una lista de declaraciones no se resuelven como el mismo tipo.

Para corregir este error

  • Asegúrese de que todas las declaraciones auto de la lista se deducen como el mismo tipo.

Ejemplo

Las instrucciones siguientes generan el error C3538. Cada instrucción declara múltiples variables, pero cada uso de la palabra clave auto no se deduce como el mismo tipo.

// C3538.cpp
// Compile with /Zc:auto
// C3538 expected
int main()
{
// Variable x1 is a pointer to char, but y1 is a double.
   auto * x1 = "a", y1 = 3.14;  
// Variable c is a char, but c1, c2, and c3 are pointers to pointers.
   auto c = 'a', *c1 = &c, * c2 = &c1, * c3 = &c2; 
// Variable x2 is an int, but y2 is a double and z is a char.
   auto x2(1), y2(0.0), z = 'a'; 
// Variable a is a pointer to int, but b is a pointer to double.
   auto *a = new auto(1), *b = new auto(2.0); 
   return 0;
}

Vea también

Referencia

auto (Palabra clave)