Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
'identifier': los elementos de la matriz inicializada parcialmente deben tener un constructor predeterminado
Comentarios
Se especificaron demasiado pocos inicializadores para una matriz de tipos definidos por el usuario o constantes. Si no se especifican un inicializador explícito y su constructor correspondiente para un miembro de matriz, se debe proporcionar un constructor predeterminado.
Este error del compilador está obsoleto en Visual Studio 2022.
Ejemplo
En el ejemplo siguiente se genera la advertencia C2073. Archivo de origen C2073.cpp:
// C2073.cpp
class A {
public:
A( int ); // constructor for ints only
};
A a[3] = { A(1), A(2) }; // C2073, no default constructor
Aquí se muestra una corrección en el archivo de código fuente C2073b.cpp:
// C2073b.cpp
// compile with: /c
class B {
public:
B(); // default constructor declared
B( int );
};
B b[3] = { B(1), B(2) }; // OK