Doesstring a = string(); same with string a;?
Or
Doesvalarray<int> a = valarray<int>(); same with valarray<int> a;?
I designed a class contain a string class and a valarray class, when I making the default constructor, I want to use the default constructor of string and valarray. Is it the right syntax?
> why I bother explicitly offer a default constructor when have other constructors,
> anyway the compiler would generate one.
The compiler generates an implicitly declared default constructor only if there are no user-defined constructors.
(And base classes and non-static members are DefaultConstructible).