'identifier' : no appropriate default constructor available
No default constructor is available for the specified class, structure, or union. The compiler supplies a default constructor if user-defined constructors are not provided. If you provide a constructor that takes a nonvoid parameter, you must also provide a default constructor. The default constructor can be a constructor with default values for all parameters.
The following sample generates C2512:
class B { public: B (char *); /* add the folling constructor B() { }; */ }; void main() { B b; // C2512 }