'identifier' : partially initialized array requires a default constructor
An array of user-defined types or an array of consists was specified with too few initializers.
If an explicit initializer (and its corresponding constructor) is not specified for a member of an array, then a default constructor must be supplied.
The following is an example of this error:
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