Quote Originally Posted by Khabz View Post
So my guess is it doesn't work because the compiler wouldn't know which constructor to use am I right?
Correct. However, if all of the constructor parameters are being defaulted, then the two should be functionally equivalent. Thus there's no need to define both if they do the same thing. If they aren't functionally equivalent, the class design has a logical ambiguity that needs to be resolved. This logical ambiguity is simply being reflected as a syntactic ambiguity, and you may yourself lucky that the compiler caught the problem for you.