In Karl Seguin's Foundations of Programming there is a small section on using the factory pattern. He closes the passage by stating "you can accomplish the same functionality with constructor overloading", but doesn't indicate when or why?
So,when does it make more sense to use the factory pattern rather than an overloaded constructor to instantiate an object?