Sdílet prostřednictvím


Chyba kompilátoru C2073

'identifier' : prvky částečně inicializovaného pole musí mít výchozí konstruktor.

Poznámky

Pro pole uživatelem definovaných typů nebo konstant bylo zadáno příliš málo inicializátorů. Pokud není pro člen pole zadán explicitní inicializátor a jeho odpovídající konstruktor, musí být zadán výchozí konstruktor.

Tato chyba kompilátoru je zastaralá v sadě Visual Studio 2022.

Příklad

Následující příklad vygeneruje C2073. Zdrojový soubor C2073.cpp:

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

Oprava je uvedená tady ve zdrojovém souboru C2073b.cpp:

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