Partilhar via


Erro do compilador C2073

'identifier' : os elementos da matriz parcialmente inicializada devem ter um construtor padrão

Observações

Poucos inicializadores foram especificados para uma matriz de tipos ou constantes definidos pelo usuário. Se um inicializador explícito e seu construtor correspondente não forem especificados para um membro da matriz, um construtor padrão deverá ser fornecido.

Este erro do compilador está obsoleto no Visual Studio 2022.

Exemplo

O exemplo a seguir gera C2073. Ficheiro de origem C2073.cpp

// C2073.cpp
class A {
public:
   A( int );   // constructor for ints only
};
A a[3] = { A(1), A(2) };   // C2073, no default constructor

Uma correção é mostrada aqui no arquivo de C2073b.cpporigem:

// C2073b.cpp
// compile with: /c
class B {
public:
   B();   // default constructor declared
   B( int );
};
B b[3] = { B(1), B(2) };   // OK