'identifier' : partially initialized array requires a default constructor
Too few initializers were specified for an array of user-defined types or constants. If an explicit initializer and its corresponding constructor are not specified for an array member, a default constructor must be supplied. The following sample generates C2073:
class A { public: A( int ); // constructor for ints only }; A a[3] = { A(1), A(2) }; // error, no default constructor class B { public: B(); // default constructor declared B( int ); }; B b[3] = { B(1), B(2) }; // OK