I'm not sure this is the way to go. You now rely on the default parameter, but the user can override it as a class parameter as well. I think this belongs in the class itself, not in the header.